mirror of
https://github.com/A2osX/A2osX.git
synced 2024-11-26 13:49:18 +00:00
108 lines
2.0 KiB
Plaintext
108 lines
2.0 KiB
Plaintext
PR#3
|
||
PREFIX /A2OSX.SRC
|
||
LOMEM $900
|
||
INC 1
|
||
AUTO 6
|
||
.LIST OFF
|
||
*--------------------------------------
|
||
SYS.BASL0 .EQ $800
|
||
*--------------------------------------
|
||
K.KernelRun jsr TSK.TskMgrRun
|
||
jsr EVT.GetEvents
|
||
bcs .4 CS=no event
|
||
|
||
jsr TSK.DispatchEvents
|
||
bcc .4 CC=All Events Dispatched
|
||
|
||
jsr PS.Select0
|
||
|
||
stz pEvent
|
||
|
||
.1 lda (pEvent)
|
||
beq .3
|
||
|
||
bmi .2 Ignore & Discard any timer event
|
||
|
||
jsr RUN.DumpEvent
|
||
|
||
.2 jsr EVT.DestroyEvent
|
||
|
||
.3 lda pEvent
|
||
clc
|
||
adc #S.EVT
|
||
sta pEvent
|
||
lda EVTMGR.COUNT
|
||
bne .1
|
||
|
||
.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
|
||
lda KBD
|
||
sta A2osX.RANDOM16+1
|
||
|
||
bpl K.KernelRun
|
||
|
||
cmp #"1"
|
||
bcc K.KernelRun
|
||
cmp #"5"
|
||
bcs K.KernelRun
|
||
|
||
sta KBDSTROBE
|
||
|
||
and #$0F
|
||
cmp A2osX.ASCREEN Same as active screen...nothing to do
|
||
beq K.KernelRun
|
||
|
||
tax
|
||
lda A2osX.SCRNDEVS-1,x No device claimed this screen
|
||
beq K.KernelRun
|
||
|
||
jsr K.GetDevByIDA x unmodified.....
|
||
bcs K.KernelRun ???
|
||
|
||
stx A2osX.ASCREEN
|
||
|
||
>STYA pDev
|
||
lda (pDev)
|
||
sta .5+1
|
||
ldy #1
|
||
lda (pDev),y
|
||
sta .5+2
|
||
ldx #DEVMGR.CONTROL
|
||
jsr .5
|
||
jmp K.KernelRun
|
||
.5 jmp $ffff
|
||
*--------------------------------------
|
||
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"
|
||
SYS.CPULOADI .BS 1
|
||
SYS.CPULOADC .AS "|/-\"
|
||
*--------------------------------------
|
||
MAN
|
||
SAVE SYS/KERNEL.S.RUN
|
||
LOAD SYS/KERNEL.S
|
||
ASM
|