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 uint16_t logptr_w;
|
||||||
extern __xdata uint8_t full_line_available;
|
extern __xdata uint8_t full_line_available;
|
||||||
extern __xdata uint8_t syslog_enabled;
|
extern __xdata uint8_t syslog_enabled;
|
||||||
extern __xdata char char_to_write;
|
|
||||||
|
|
||||||
// See setup_serial_timer1() for valid baudrate settings!
|
// See setup_serial_timer1() for valid baudrate settings!
|
||||||
#define SERIAL_BAUD_RATE 115200
|
#define SERIAL_BAUD_RATE 115200
|
||||||
@@ -193,9 +192,6 @@ void write_char(char c)
|
|||||||
tx_buf_empty = 0;
|
tx_buf_empty = 0;
|
||||||
SBUF = c;
|
SBUF = c;
|
||||||
|
|
||||||
char_to_write = c;
|
|
||||||
// syslog_write_char(); // why does this gives a linker error?
|
|
||||||
|
|
||||||
if (syslog_enabled) {
|
if (syslog_enabled) {
|
||||||
logbuf[logptr_w++] = c;
|
logbuf[logptr_w++] = c;
|
||||||
logptr_w &= (LOGBUF_SIZE - 1);
|
logptr_w &= (LOGBUF_SIZE - 1);
|
||||||
@@ -330,7 +326,7 @@ void print_byte(uint8_t a)
|
|||||||
void isr_ext0(void) __interrupt(0)
|
void isr_ext0(void) __interrupt(0)
|
||||||
{
|
{
|
||||||
EX0 = 0; // Disable interrupt for the moment
|
EX0 = 0; // Disable interrupt for the moment
|
||||||
write_char('X');
|
//write_char('X');
|
||||||
IT0 = 1; // Trigger on falling edge of external interrupt
|
IT0 = 1; // Trigger on falling edge of external interrupt
|
||||||
EX0 = 1; // Re-enable 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
|
// This flag should only be reset after all packets have been read
|
||||||
EX1 = 0;
|
EX1 = 0;
|
||||||
write_char('Y');
|
//write_char('Y');
|
||||||
EX1 = 1;
|
EX1 = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -356,7 +352,7 @@ void isr_ext1(void) __interrupt(2)
|
|||||||
void isr_ext2(void) __interrupt(8)
|
void isr_ext2(void) __interrupt(8)
|
||||||
{
|
{
|
||||||
EXIF &= 0xef; // Clear IRQ flag (bit 7) in EXIF
|
EXIF &= 0xef; // Clear IRQ flag (bit 7) in EXIF
|
||||||
write_char('Z');
|
//write_char('Z');
|
||||||
PCON |= 1; // Enter Idle mode until interrupt occurs
|
PCON |= 1; // Enter Idle mode until interrupt occurs
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -367,7 +363,7 @@ void isr_ext2(void) __interrupt(8)
|
|||||||
void isr_ext3(void) __interrupt(9)
|
void isr_ext3(void) __interrupt(9)
|
||||||
{
|
{
|
||||||
EXIF &= 0xdf; // Clear IRQ flag (bit 6) in EXIF
|
EXIF &= 0xdf; // Clear IRQ flag (bit 6) in EXIF
|
||||||
write_char('W');
|
//write_char('W');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Timer2: handles system tick.
|
// Timer2: handles system tick.
|
||||||
@@ -2169,6 +2165,8 @@ void main(void)
|
|||||||
|
|
||||||
check_and_flash_update_image();
|
check_and_flash_update_image();
|
||||||
|
|
||||||
|
syslog_init();
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
// This register seems to work on the RTL8373 only if also the SDS
|
// This register seems to work on the RTL8373 only if also the SDS
|
||||||
// Is correctly configured. Therefore, we can test it, here...
|
// Is correctly configured. Therefore, we can test it, here...
|
||||||
@@ -2195,7 +2193,6 @@ void main(void)
|
|||||||
uip_init();
|
uip_init();
|
||||||
uip_arp_init();
|
uip_arp_init();
|
||||||
httpd_init();
|
httpd_init();
|
||||||
syslog_init();
|
|
||||||
|
|
||||||
management_vlan = 0; // Disabled
|
management_vlan = 0; // Disabled
|
||||||
|
|
||||||
|
|||||||
@@ -13,7 +13,6 @@ __xdata uint16_t logptr_w = 0;
|
|||||||
__xdata uint16_t logptr_r = 0;
|
__xdata uint16_t logptr_r = 0;
|
||||||
__xdata uint8_t full_line_available = 0;
|
__xdata uint8_t full_line_available = 0;
|
||||||
__xdata uint8_t syslog_enabled = 0;
|
__xdata uint8_t syslog_enabled = 0;
|
||||||
__xdata char char_to_write = 0;
|
|
||||||
__xdata uip_ipaddr_t syslog_addr;
|
__xdata uip_ipaddr_t syslog_addr;
|
||||||
|
|
||||||
#define DEST_OFFSET (0)
|
#define DEST_OFFSET (0)
|
||||||
@@ -25,19 +24,13 @@ __xdata uip_ipaddr_t syslog_addr;
|
|||||||
|
|
||||||
void syslog_init(void) __banked
|
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
|
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
|
void handle_syslog(void) __banked
|
||||||
{
|
{
|
||||||
if ((logptr_r != logptr_w) && full_line_available)
|
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[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 ] = 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 + 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 + 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)
|
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 ] = 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 + 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)
|
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
|
memcpyc(SYSLOG_O + UDP_PAYLOAD_OFFSET, "<14>", 4); // Syslog priority prefix
|
||||||
|
|||||||
@@ -5,8 +5,9 @@
|
|||||||
|
|
||||||
#define LOGBUF_SIZE 512
|
#define LOGBUF_SIZE 512
|
||||||
|
|
||||||
|
extern __xdata char logbuf[LOGBUF_SIZE];
|
||||||
|
|
||||||
void syslog_init(void) __banked;
|
void syslog_init(void) __banked;
|
||||||
void syslog_write_char(void) __banked;
|
|
||||||
void handle_syslog(void) __banked;
|
void handle_syslog(void) __banked;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Reference in New Issue
Block a user