mirror of
https://github.com/logicog/RTLPlayground.git
synced 2026-08-30 14:52:51 +08:00
initialize all vars; remove unused code
This commit is contained in:
+6
-9
@@ -38,7 +38,6 @@ extern __xdata char logbuf[LOGBUF_SIZE];
|
||||
extern __xdata uint16_t logptr_w;
|
||||
extern __xdata uint8_t full_line_available;
|
||||
extern __xdata uint8_t syslog_enabled;
|
||||
extern __xdata char char_to_write;
|
||||
|
||||
// See setup_serial_timer1() for valid baudrate settings!
|
||||
#define SERIAL_BAUD_RATE 115200
|
||||
@@ -193,9 +192,6 @@ void write_char(char c)
|
||||
tx_buf_empty = 0;
|
||||
SBUF = c;
|
||||
|
||||
char_to_write = c;
|
||||
// syslog_write_char(); // why does this gives a linker error?
|
||||
|
||||
if (syslog_enabled) {
|
||||
logbuf[logptr_w++] = c;
|
||||
logptr_w &= (LOGBUF_SIZE - 1);
|
||||
@@ -330,7 +326,7 @@ void print_byte(uint8_t a)
|
||||
void isr_ext0(void) __interrupt(0)
|
||||
{
|
||||
EX0 = 0; // Disable interrupt for the moment
|
||||
write_char('X');
|
||||
//write_char('X');
|
||||
IT0 = 1; // Trigger on falling edge of external interrupt
|
||||
EX0 = 1; // Re-enable interrupt
|
||||
}
|
||||
@@ -345,7 +341,7 @@ void isr_ext1(void) __interrupt(2)
|
||||
{
|
||||
// This flag should only be reset after all packets have been read
|
||||
EX1 = 0;
|
||||
write_char('Y');
|
||||
//write_char('Y');
|
||||
EX1 = 1;
|
||||
}
|
||||
|
||||
@@ -356,7 +352,7 @@ void isr_ext1(void) __interrupt(2)
|
||||
void isr_ext2(void) __interrupt(8)
|
||||
{
|
||||
EXIF &= 0xef; // Clear IRQ flag (bit 7) in EXIF
|
||||
write_char('Z');
|
||||
//write_char('Z');
|
||||
PCON |= 1; // Enter Idle mode until interrupt occurs
|
||||
}
|
||||
|
||||
@@ -367,7 +363,7 @@ void isr_ext2(void) __interrupt(8)
|
||||
void isr_ext3(void) __interrupt(9)
|
||||
{
|
||||
EXIF &= 0xdf; // Clear IRQ flag (bit 6) in EXIF
|
||||
write_char('W');
|
||||
//write_char('W');
|
||||
}
|
||||
|
||||
// Timer2: handles system tick.
|
||||
@@ -2169,6 +2165,8 @@ void main(void)
|
||||
|
||||
check_and_flash_update_image();
|
||||
|
||||
syslog_init();
|
||||
|
||||
#ifdef DEBUG
|
||||
// This register seems to work on the RTL8373 only if also the SDS
|
||||
// Is correctly configured. Therefore, we can test it, here...
|
||||
@@ -2195,7 +2193,6 @@ void main(void)
|
||||
uip_init();
|
||||
uip_arp_init();
|
||||
httpd_init();
|
||||
syslog_init();
|
||||
|
||||
management_vlan = 0; // Disabled
|
||||
|
||||
|
||||
@@ -13,7 +13,6 @@ __xdata uint16_t logptr_w = 0;
|
||||
__xdata uint16_t logptr_r = 0;
|
||||
__xdata uint8_t full_line_available = 0;
|
||||
__xdata uint8_t syslog_enabled = 0;
|
||||
__xdata char char_to_write = 0;
|
||||
__xdata uip_ipaddr_t syslog_addr;
|
||||
|
||||
#define DEST_OFFSET (0)
|
||||
@@ -25,19 +24,13 @@ __xdata uip_ipaddr_t syslog_addr;
|
||||
|
||||
void syslog_init(void) __banked
|
||||
{
|
||||
syslog_enabled = 0;
|
||||
logptr_w = 0;
|
||||
logptr_r = 0;
|
||||
full_line_available = 0;
|
||||
syslog_addr[0] = 0xffff; syslog_addr[1] = 0xffff; // Default to broadcast
|
||||
}
|
||||
|
||||
void syslog_write_char(void) __banked
|
||||
{
|
||||
if (syslog_enabled) {
|
||||
logbuf[logptr_w++] = char_to_write;
|
||||
logptr_w &= (LOGBUF_SIZE - 1);
|
||||
if (char_to_write == '\n')
|
||||
full_line_available = 1;
|
||||
}
|
||||
}
|
||||
|
||||
void handle_syslog(void) __banked
|
||||
{
|
||||
if ((logptr_r != logptr_w) && full_line_available)
|
||||
@@ -60,7 +53,7 @@ void handle_syslog(void) __banked
|
||||
SYSLOG_O[ETHERTYPE_OFFSET] = 0x08; SYSLOG_O[ETHERTYPE_OFFSET + 1] = 0x00; // Ethertype: IPv4
|
||||
|
||||
SYSLOG_O[IP_HEADER_OFFSET ] = 0x45; SYSLOG_O[IP_HEADER_OFFSET + 1] = 0x00; // IPv4, no options
|
||||
SYSLOG_O[IP_HEADER_OFFSET + 2] = (20+8+4+log_size)>>8; SYSLOG_O[IP_HEADER_OFFSET + 3] = (20+8+4+log_size)&0xff; // Total Length
|
||||
SYSLOG_O[IP_HEADER_OFFSET + 2] = (20+8+4+log_size) >> 8; SYSLOG_O[IP_HEADER_OFFSET + 3] = (20+8+4+log_size) & 0xff; // Total Length (IP header + UDP header + payload)
|
||||
SYSLOG_O[IP_HEADER_OFFSET + 4] = 0x00; SYSLOG_O[IP_HEADER_OFFSET + 5] = 0x00; // Identification
|
||||
SYSLOG_O[IP_HEADER_OFFSET + 6] = 0x00; SYSLOG_O[IP_HEADER_OFFSET + 7] = 0x00; // Flags, Fragment Offset
|
||||
SYSLOG_O[IP_HEADER_OFFSET + 8] = 0x40; SYSLOG_O[IP_HEADER_OFFSET + 9] = 0x11; // TTL, Protocol (UDP)
|
||||
@@ -72,7 +65,7 @@ void handle_syslog(void) __banked
|
||||
|
||||
SYSLOG_O[UDP_HEADER_OFFSET ] = 0x02; SYSLOG_O[UDP_HEADER_OFFSET + 1] = 0x02; // Source Port
|
||||
SYSLOG_O[UDP_HEADER_OFFSET + 2] = 0x02; SYSLOG_O[UDP_HEADER_OFFSET + 3] = 0x02; // Destination Port
|
||||
SYSLOG_O[UDP_HEADER_OFFSET + 4] = (8+4+log_size)>>8; SYSLOG_O[UDP_HEADER_OFFSET + 5] = (8+4+log_size)&0xff; // Length
|
||||
SYSLOG_O[UDP_HEADER_OFFSET + 4] = (8+4+log_size) >> 8; SYSLOG_O[UDP_HEADER_OFFSET + 5] = (8+4+log_size) & 0xff; // Length (UDP header + payload)
|
||||
SYSLOG_O[UDP_HEADER_OFFSET + 6] = 0x00; SYSLOG_O[UDP_HEADER_OFFSET + 7] = 0x00; // Header Checksum (not calculated)
|
||||
|
||||
memcpyc(SYSLOG_O + UDP_PAYLOAD_OFFSET, "<14>", 4); // Syslog priority prefix
|
||||
|
||||
Reference in New Issue
Block a user