]>
Commit | Line | Data |
---|---|---|
1 | SECTION "a",HOME | |
2 | ||
3 | main: | |
4 | ld c, $51 ; Note that we are alive. | |
5 | ld a, $FF | |
6 | ld [c],a | |
7 | ||
8 | ld sp, $DFF0 | |
9 | ||
10 | ld hl, $DF81 | |
11 | ld a, $80 | |
12 | ld [hl], a | |
13 | ||
14 | ld c, $07 | |
15 | ld a, $04 ;start timer, 4.096KHz | |
16 | ld [c], a | |
17 | ;diqs: ei | |
18 | ; ld a, $80 | |
19 | ; ld c, $51 | |
20 | ; ld [c], a | |
21 | ; jr diqs | |
22 | call irqhand | |
23 | ei | |
24 | coqs: jr coqs | |
25 | ||
26 | section "Diq", HOME[$38] | |
27 | fuqed: | |
28 | di | |
29 | jr fuqed | |
30 | ||
31 | section "fuq",HOME[$100] | |
32 | irqhand: | |
33 | PUSH AF | |
34 | PUSH BC | |
35 | PUSH DE | |
36 | PUSH HL | |
37 | ||
38 | xor a | |
39 | ld c, $0F ; ack the irq | |
40 | ld [c], a | |
41 | ||
42 | ld a, $41 ; print A | |
43 | call putc | |
44 | ||
45 | ld hl, $DF81 | |
46 | ld a, [hl] | |
47 | add 1 | |
48 | ld c, $51 | |
49 | ld [c], a | |
50 | ld [hl], a | |
51 | ||
52 | ||
53 | POP HL | |
54 | POP DE | |
55 | POP BC | |
56 | POP AF | |
57 | RETI | |
58 | db $18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE | |
59 | db $18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE | |
60 | db $18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE,$18,$FE | |
61 | ||
62 | putc: | |
63 | ld b, 0 | |
64 | ld c, $50 | |
65 | push af | |
66 | .waitport: | |
67 | ld a,[c] | |
68 | cp b | |
69 | jr nz,.waitport | |
70 | pop af | |
71 | ld [c],a | |
72 | ret |