mirror of
https://github.com/A2osX/A2osX.git
synced 2024-07-13 13:29:04 +00:00
Kernel version 0.9 : ....More IRQ/VBL enhancement
This commit is contained in:
parent
3e1bb79081
commit
1b2e875626
BIN
A2OSX.BOOT.po
BIN
A2OSX.BOOT.po
Binary file not shown.
BIN
A2OSX.SRC.po
BIN
A2OSX.SRC.po
Binary file not shown.
@ -5,8 +5,6 @@ INC 1
|
||||
AUTO 6
|
||||
.LIST OFF
|
||||
*--------------------------------------
|
||||
DevMgr.SYS.BASL0 .EQ $800
|
||||
*--------------------------------------
|
||||
DevMgr.LoMem .EQ *
|
||||
*--------------------------------------
|
||||
DevMgr.NUL.Code cld
|
||||
@ -65,8 +63,7 @@ DevMgr.SYS.Stat .DA #S.DEV.S.WRITE+S.DEV.S.READ
|
||||
.DA #0
|
||||
.DA $0900
|
||||
*--------------------------------------
|
||||
DevMgr.SYS.Open stz DevMgr.SYS.CPULOADI
|
||||
stz DevMgr.SYS.CH
|
||||
DevMgr.SYS.Open stz DevMgr.SYS.CH
|
||||
stz DevMgr.SYS.CV
|
||||
|
||||
ldx #0
|
||||
@ -105,14 +102,6 @@ DevMgr.SYS.Read lda A2osX.ASCREEN
|
||||
cmp #2 is SYS active?
|
||||
bne .9
|
||||
|
||||
ldx DevMgr.SYS.CPULOADI
|
||||
lda DevMgr.SYS.CPULOADC,x
|
||||
sta DevMgr.SYS.BASL0+38
|
||||
dex
|
||||
bpl .1
|
||||
ldx #3
|
||||
.1 stx DevMgr.SYS.CPULOADI
|
||||
|
||||
lda OPENAPPLE
|
||||
bmi .9 Open apple key, not for us...
|
||||
lda KBD
|
||||
@ -120,15 +109,7 @@ DevMgr.SYS.Read lda A2osX.ASCREEN
|
||||
sta KBDSTROBE
|
||||
|
||||
and #$7F
|
||||
|
||||
ldy #S.EVT.DATALO
|
||||
sta (pEvent),y
|
||||
iny S.EVT.DATAHI
|
||||
lda #0
|
||||
sta (pEvent),y
|
||||
lda #S.EVT.F.KEY
|
||||
sta (pEvent)
|
||||
|
||||
|
||||
clc
|
||||
rts
|
||||
|
||||
@ -298,8 +279,6 @@ DevMgr.SYS.SetCharAtYX
|
||||
*--------------------------------------
|
||||
DevMgr.SYS.CH .BS 1
|
||||
DevMgr.SYS.CV .BS 1
|
||||
DevMgr.SYS.CPULOADI .BS 1
|
||||
DevMgr.SYS.CPULOADC .AS -"|/-\"
|
||||
*--------------------------------------
|
||||
DevMgr.SYS.TITLE >CSTR "A2osX System Screen"
|
||||
DevMgr.SYS.BASEL .HS 00.80.00.80.00.80.00.80.28.A8.28.A8.28.A8.28.A8.50.D0.50.D0.50.D0.50.D0
|
||||
|
@ -1,6 +1,6 @@
|
||||
PR#3
|
||||
PREFIX /A2OSX.SRC
|
||||
LOMEM $A00
|
||||
LOMEM $900
|
||||
INC 1
|
||||
AUTO 6
|
||||
.LIST OFF
|
||||
@ -216,14 +216,20 @@ A2osX.SaveY .BS 1
|
||||
ProDOS.INTNUM .BS 1
|
||||
*--------------------------------------
|
||||
IrqHandler cld
|
||||
lda RDALTZP
|
||||
sta .2+1
|
||||
|
||||
bmi .1
|
||||
sta SETALTZP
|
||||
tsx
|
||||
stx A2osX.SaveSM
|
||||
ldx A2osX.SaveSX
|
||||
txs
|
||||
|
||||
jsr K.IrqHandler
|
||||
.1 jsr K.IrqHandler
|
||||
|
||||
.2 lda #$ff
|
||||
bmi .3
|
||||
|
||||
tsx
|
||||
stx A2osX.SaveSX
|
||||
@ -231,7 +237,7 @@ IrqHandler cld
|
||||
txs
|
||||
sta CLRALTZP
|
||||
|
||||
rts
|
||||
.3 rts
|
||||
*--------------------------------------
|
||||
BrkHandler bra *
|
||||
*--------------------------------------
|
||||
|
@ -67,6 +67,7 @@ Kernel.Init3 jsr MemMgrInit
|
||||
|
||||
bit RRAMWRAMBNK2
|
||||
bit RRAMWRAMBNK2
|
||||
>DEBUG
|
||||
jmp K.KernelRun
|
||||
|
||||
.9 >PUSHA
|
||||
@ -212,12 +213,12 @@ IrqMgrInit php
|
||||
|
||||
bit RROMBNK2 Renable ROM to allow MOUSE II firmware works properly
|
||||
|
||||
ldy #INITMOUSE Reset
|
||||
lda #8
|
||||
ldy #SETMOUSE
|
||||
jsr GOMOUSE
|
||||
bcs *
|
||||
|
||||
lda #8
|
||||
ldy #SETMOUSE
|
||||
ldy #INITMOUSE Reset
|
||||
jsr GOMOUSE
|
||||
bcs *
|
||||
|
||||
|
@ -70,7 +70,7 @@ K.IrqHandler lda K.IrkMgr.VBL
|
||||
|
||||
inc K.IrkMgr.VBLINT
|
||||
|
||||
lda #$ff
|
||||
lda #$80
|
||||
sta K.IrkMgr.VBL Confirm VBL signal valid for EvtMgr
|
||||
|
||||
clc
|
||||
|
@ -1,13 +1,13 @@
|
||||
PR#3
|
||||
PREFIX /A2OSX.SRC
|
||||
NEW
|
||||
LOMEM $900
|
||||
INC 1
|
||||
AUTO 6
|
||||
.LIST OFF
|
||||
*--------------------------------------
|
||||
SYS.BASL0 .EQ $800
|
||||
*--------------------------------------
|
||||
K.KernelRun jsr TSK.TskMgrRun
|
||||
bcs *
|
||||
|
||||
jsr EVT.GetEvents
|
||||
bcs .4 CS=no event
|
||||
|
||||
@ -23,16 +23,8 @@ K.KernelRun jsr TSK.TskMgrRun
|
||||
|
||||
bmi .2 Ignore & Discard any timer event
|
||||
|
||||
ldy #S.EVT-1
|
||||
jsr RUN.DumpEvent
|
||||
|
||||
.10 lda (pEvent),y
|
||||
>PUSHA
|
||||
dey
|
||||
bpl .10
|
||||
|
||||
>LDYAI MSG.DumpEvent
|
||||
jsr K.CPrintFYA
|
||||
|
||||
.2 jsr EVT.DestroyEvent
|
||||
|
||||
.3 lda pEvent
|
||||
@ -42,7 +34,21 @@ K.KernelRun jsr TSK.TskMgrRun
|
||||
lda EVTMGR.COUNT
|
||||
bne .1
|
||||
|
||||
.4 bit OPENAPPLE
|
||||
.4 lda A2osX.ASCREEN
|
||||
cmp #2 is SYS active?
|
||||
bne .42
|
||||
|
||||
lda K.IrkMgr.VBL if verified = $80
|
||||
|
||||
ldx SYS.CPULOADI
|
||||
ora SYS.CPULOADC,x
|
||||
sta SYS.BASL0+38
|
||||
dex
|
||||
bpl .41
|
||||
ldx #3
|
||||
.41 stx SYS.CPULOADI
|
||||
|
||||
.42 bit OPENAPPLE
|
||||
bpl K.KernelRun
|
||||
|
||||
inc A2osX.RANDOM16
|
||||
@ -81,14 +87,19 @@ K.KernelRun jsr TSK.TskMgrRun
|
||||
jsr .5
|
||||
jmp K.KernelRun
|
||||
.5 jmp $ffff
|
||||
*--------------------------------------
|
||||
.9 jsr DevMgr.SYS.Control
|
||||
>LDYAI MSG.KRNLPANIC
|
||||
jsr K.CPrintFYA
|
||||
bra *
|
||||
*--------------------------------------
|
||||
RUN.DumpEvent ldy #S.EVT-1
|
||||
|
||||
.1 >PUSHB (pEvent),y
|
||||
dey
|
||||
bpl .1
|
||||
|
||||
>LDYAI MSG.DumpEvent
|
||||
jmp K.CPrintFYA
|
||||
*--------------------------------------
|
||||
MSG.DumpEvent >CSTR "!Evt:F=%b,Dev=$%h,LO=$%h,HI=$%h,W1=$%H,W2=$%H\n"
|
||||
MSG.KRNLPANIC >CSTR "\n!!!Kernel Panic!!!\n"
|
||||
SYS.CPULOADI .BS 1
|
||||
SYS.CPULOADC .AS -"|/-\"
|
||||
*--------------------------------------
|
||||
MAN
|
||||
SAVE SYS/KERNEL.S.RUN
|
||||
|
Loading…
Reference in New Issue
Block a user