8 #define DIVIDER (OSC/(64L*BAUD_RATE))
10 void external_startup(void) {
12 mov.b _WDCON,#0 ;shut down the watchdog
15 ; mov.b _BCR,#1 ;BCR: 8 data, 16 address
16 ; mov.b _SCR,#1 ;SCR: page zero mode
20 TL1 = RTL1 = -DIVIDER;
21 TH1 = RTH1 = -DIVIDER >> 8;
22 TR1 = 1; /* enable timer 1 */
24 S0CON = 0x52; /* mode 1, receiver enable */
25 IPA4 |= 0x6; /* maximum priority */
26 ERI0=1; /* enable receiver interupts */
27 TI0==1; /* transmitter empty */
28 RI0=0; /* receiver empty */
30 //PSWH &= 0xf0; /* start interupt system */
37 void putchar(char c) {
38 c; // hush the compiler
49 void exit_simulator(void) {
57 void putchar(char c) {
80 int puts(char *string) {