3 #define DIVIDER (OSC/(64L*BAUD_RATE))
5 void external_startup(void) {
7 mov.b _WDCON,#0 ;shut down the watchdog
10 ; mov.b _BCR,#1 ;BCR: 8 data, 16 address
11 ; mov.b _SCR,#1 ;SCR: page zero mode
15 TL1 = RTL1 = -DIVIDER;
16 TH1 = RTH1 = -DIVIDER >> 8;
17 TR1 = 1; /* enable timer 1 */
19 S0CON = 0x52; /* mode 1, receiver enable */
20 IPA4 |= 0x6; /* maximum priority */
21 ERI0=1; /* enable receiver interupts */
22 TI0==1; /* transmitter empty */
23 RI0=0; /* receiver empty */
25 //PSWH &= 0xf0; /* start interupt system */
32 void putchar(char c) {
33 c; // hush the compiler
42 void exit_simulator(void) {
50 void putchar(char c) {
73 int puts(char *string) {