···11; vim:syntax=z8a:ts=8
22;
33-; getchar and other keyboard routines
43; msTERM
44+; getchar and other keyboard routines
55;
66; Copyright (c) 2019 joshua stein <jcs@jcs.org>
77;
+2-2
isr.s
···11; vim:syntax=z8a:ts=8
22;
33-; interrupt service routine
43; msTERM
44+; interrupt service routine
55;
66; Copyright (c) 2019 joshua stein <jcs@jcs.org>
77;
···27272828 ; we're going to put 0xf7 at 0xf800 - 0xf8ff and then put 0xf8 in the
2929 ; 'i' register. when an interrupt happens in interrupt mode 2, some
3030- ; garbage will be on the bus and form an address 0xf800+garbage.
3030+ ; garbage byte will be on the bus and form an address 0xf800+garbage.
3131 ; the cpu will then read that address+1 which we know will contain
3232 ; 0xf7f7, and then jump to 0xf7f7, which we contain our own code,
3333 ; which will just be a 'jp isr' to our real ISR