Mercurial > hg > Members > kono > os9 > sbc09
comparison os9/level2/clock.asm @ 55:8d151f303bee
FIRQ does not worked
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 23 Jul 2018 08:35:25 +0900 |
parents | fc10b7ae23d0 |
children |
comparison
equal
deleted
inserted
replaced
54:fc10b7ae23d0 | 55:8d151f303bee |
---|---|
15 ttl OS-9 Level One V2 Clock module | 15 ttl OS-9 Level One V2 Clock module |
16 | 16 |
17 ifp1 | 17 ifp1 |
18 use defsfile | 18 use defsfile |
19 endc | 19 endc |
20 | |
21 usefirq equ 0 | |
20 | 22 |
21 tylg set Systm+Objct | 23 tylg set Systm+Objct |
22 atrv set ReEnt+rev | 24 atrv set ReEnt+rev |
23 rev set $01 | 25 rev set $01 |
24 edition set $06 | 26 edition set $06 |
36 fcb F$STime | 38 fcb F$STime |
37 fdb FSTime-*-2 | 39 fdb FSTime-*-2 |
38 fcb $80 | 40 fcb $80 |
39 | 41 |
40 | 42 |
41 ClockIRQ ldx #TimerPort | 43 ifeq usefirq-1 |
44 ClockFIRQ | |
45 leas -1,s | |
46 pshs d,dp,x,y | |
47 lda 8,s | |
48 ora #$80 Entire flag | |
49 pshs a | |
50 stu 8,s | |
51 jmp [$FFF8] | |
52 endc | |
53 ClockIRQ | |
54 ldx #TimerPort | |
42 lda ,x | 55 lda ,x |
43 bita #$10 | 56 bita #$10 |
44 beq L00AE | 57 beq L00AE |
45 L00AE leax ClockIRQ1,pcr | 58 L00AE leax ClockIRQ1,pcr |
46 stx <D.SvcIRQ | 59 stx <D.SvcIRQ |
62 ClkEnt equ * | 75 ClkEnt equ * |
63 pshs cc | 76 pshs cc |
64 orcc #FIRQMask+IRQMask mask ints | 77 orcc #FIRQMask+IRQMask mask ints |
65 leax >ClockIRQ,pcr | 78 leax >ClockIRQ,pcr |
66 stx <D.IRQ | 79 stx <D.IRQ |
80 ifeq usefirq-1 | |
81 leax >ClockFIRQ,pcr | |
82 stx $FFF6 must be a RAM | |
83 endc | |
67 * install system calls | 84 * install system calls |
68 leay >SysTbl,pcr | 85 leay >SysTbl,pcr |
69 os9 F$SSvc | 86 os9 F$SSvc |
70 ldd #59*256+TkPerTS last second and time slice in minute | 87 ldd #59*256+TkPerTS last second and time slice in minute |
71 std <D.Sec Will prompt RTC read at next time slice | 88 std <D.Sec Will prompt RTC read at next time slice |