Mercurial > hg > Members > kono > os9 > sbc09
comparison os9/level1/clock.asm @ 34:2032755628dc
fix for nitros9
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 15 Jul 2018 14:18:19 +0900 |
parents | 7c5379eb406e |
children | fc10b7ae23d0 |
comparison
equal
deleted
inserted
replaced
33:7c5379eb406e | 34:2032755628dc |
---|---|
21 tylg set Systm+Objct | 21 tylg set Systm+Objct |
22 atrv set ReEnt+rev | 22 atrv set ReEnt+rev |
23 rev set $01 | 23 rev set $01 |
24 edition set $06 | 24 edition set $06 |
25 TimerPort set $e030 | 25 TimerPort set $e030 |
26 TkPerSec set 60 | |
27 TkPerTS equ TkPerSec/10 ticks per time slice | |
28 | |
26 | 29 |
27 mod eom,name,tylg,atrv,ClkEnt,size | 30 mod eom,name,tylg,atrv,ClkEnt,size |
28 | 31 |
29 size equ . | 32 size equ . |
30 | 33 |
36 fcb $80 | 39 fcb $80 |
37 | 40 |
38 | 41 |
39 ClockIRQ clra | 42 ClockIRQ clra |
40 tfr a,dp | 43 tfr a,dp |
41 L00AE jsr [>D.Poll] | 44 ldx #TimerPort |
42 bcc L00AE | 45 lda ,x |
43 L00B4 jmp [>D.AltIRQ] | 46 bita #$10 |
44 rts | 47 beq L00B4 |
48 ldb #$8f start timer | |
49 stb ,x | |
50 L00B4 | |
51 jmp [>D.SvcIRQ] | |
45 | 52 |
46 ClkEnt equ * | 53 ClkEnt equ * |
54 ldd #59*256+$01 last second and last tick | |
55 std <D.Sec will prompt RTC read at next time slice | |
56 * ldb #TkPerSec | |
57 * stb <D.TSec set ticks per second | |
58 ldb #TkPerTS get ticks per time slice | |
59 stb <D.TSlice set ticks per time slice | |
60 stb <D.Slice set first time slice | |
47 pshs cc | 61 pshs cc |
48 orcc #FIRQMask+IRQMask mask ints | 62 orcc #FIRQMask+IRQMask mask ints |
49 leax >ClockIRQ,pcr | 63 leax <ClockIRQ,pcr |
50 stx <D.IRQ | 64 stx <D.IRQ |
51 * install system calls | 65 * install system calls |
52 leay >SysTbl,pcr | 66 leay <SysTbl,pcr |
53 os9 F$SSvc | 67 os9 F$SSvc |
54 ldx #TimerPort | 68 ldx #TimerPort |
55 ldb #$8f start timer | 69 * ldb #$8f start timer |
56 stb ,x | 70 * stb ,x |
57 puls pc,cc | 71 puls pc,cc |
58 | 72 |
59 * F$Time system call code | 73 * F$Time system call code |
60 FTime ldx R$X,u | 74 FTime ldx R$X,u |
61 ldy #TimerPort | 75 ldy #TimerPort |
66 ldd 3,y | 80 ldd 3,y |
67 std 2,x | 81 std 2,x |
68 ldd 5,y | 82 ldd 5,y |
69 std 4,x | 83 std 4,x |
70 clrb | 84 clrb |
85 | |
71 rts | 86 rts |
72 | 87 |
73 emod | 88 emod |
74 eom equ * | 89 eom equ * |
75 end | 90 end |