Kernel 0.93+

This commit is contained in:
Rémy GIBERT 2019-10-22 09:52:34 +02:00
parent 5fd52a8588
commit 5c56768e55
6 changed files with 80 additions and 28 deletions

Binary file not shown.

11
INC/IO.IICI.txt Normal file
View File

@ -0,0 +1,11 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
IO.IIC.RDVBLMSK .EQ $C041
IO.IIC.DISVBL .EQ $C05A W,Disable VBL interrupts
IO.IIC.ENVBL .EQ $C05B
IO.IIC.CLRVBLIRQ .EQ $C070
*--------------------------------------
MAN
SAVE INC/IO.IIC.I

10
INC/IO.IIGS.I.txt Normal file
View File

@ -0,0 +1,10 @@
NEW
AUTO 3,1
.LIST OFF
*--------------------------------------
IO.IIGS.INTEN .EQ $C041 R,W
IO.IIGS.INTFLAG .EQ $C046 R
IO.IIGS.CLRVBLINT .EQ $C047 W
*--------------------------------------
MAN
SAVE INC/IO.IIGS.I

View File

@ -755,53 +755,71 @@ IrqMgrInit >LDYAI MSG.IRQ
>STYA K.MLI.PARAMS+2
>MLICALL MLIALLOCIRQ
bcs .90
bcs .9
lda K.MLI.PARAMS+1
sta IRQ.INTNUM
plp
*--------------------------------------
lda A2osX.HWType
cmp #A2osX.HWType.IIgs
beq .8
bne .1
lda #"G"
sta IRQ.Mode
lda #$08
tsb IO.IIGS.INTEN
jsr IrqMgrInit.HZ2Tick
>LDYAI K.IrqH.IIGS
jsr IrqMgrInit.SetV
>LDYAI MSG.IRQ.IIGS
bra .8
.1 cmp #A2osX.HWType.IIc
beq .2
jsr IrqMgrInit.TClock
bcs .1
bcs .2
lda #"C"
sta IRQ.Mode
>LDYAI K.IrqH.TCLOCK
>STYA K.IrqHAuxLC.JSR+1
>STYA GP.IrqH.JSR+1
jsr IrqMgrInit.SetV
>LDYAI MSG.IRQ.CLOCK
>SYSCALL2 puts
clc
rts
bra .8
.1 jsr IrqMgrInit.Mouse
bcs .8
.2 jsr IrqMgrInit.Mouse
bcs .3
lda #"V"
sta IRQ.Mode
>LDYAI K.IrqH.VBL
>STYA K.IrqHAuxLC.JSR+1
>STYA GP.IrqH.JSR+1
jsr IrqMgrInit.SetV
>LDYAI MSG.IRQ.VBL
>SYSCALL2 puts
clc
rts
bra .8
.8 jsr IrqMgrInit.HZ2Tick
.3 jsr IrqMgrInit.HZ2Tick
lda #"P"
sta IRQ.Mode
>LDYAI MSG.IRQ.POLL
>SYSCALL2 puts
.8 >SYSCALL2 puts
clc
rts
.90 plp
.9 sec
.9 plp
sec
rts
*--------------------------------------
IrqMgrInit.SetV >STYA K.IrqHAuxLC.JSR+1
>STYA GP.IrqH.JSR+1
rts
*--------------------------------------
IrqMgrInit.TClock
@ -926,15 +944,18 @@ IrqMgrInit.Mouse
.11 jmp $ffff SELF MODIFIED
*--------------------------------------
IrqMgrInit.HZ2Tick
ldx #50
lda A2osX.HZ
sta CORE.TickPer10t
sta CORE.Tick10t
cmp #5
beq .1
ldx #60
.1 stx CORE.TickPerSec
stx CORE.TickSec
asl
asl
clc
adc A2osX.HZ
asl
sta CORE.TickPerSec
sta CORE.TickSec
rts
*--------------------------------------
@ -1096,7 +1117,8 @@ MSG.BLKDEV.USR .AZ "User"
MSG.BLKDEV.BLK .AZ "Generic Block"
MSG.BLKDEV.SP .AZ "Smartport"
MSG.IRQ .AZ "Interrupt Manager..."
MSG.IRQ.VBL .AZ " Mouse VBL IRQ Activated."
MSG.IRQ.IIGS .AZ " Apple IIgs VBL IRQ Activated."
MSG.IRQ.VBL .AZ " Mouse Card VBL IRQ Activated."
MSG.IRQ.CLOCK .AZ " Clock Card IRQ Activated."
MSG.IRQ.POLL .AZ " Polling Mode."
MSG.EVT .AZ "Event Manager..."

View File

@ -129,6 +129,14 @@ K.IrqHAuxLC.8 rti
* - Kernel K.IrqHAuxLC
* - ProDOS IRQ Manager (GP)
*--------------------------------------
K.IrqH.IIGS lda IO.IIGS.INTFLAG
and #$08
beq K.IrqH.DEV
stz IO.IIGS.CLRVBLINT
bra K.IrqH.Switch
*--------------------------------------
K.IrqH.TCLOCK ldy IRQ.VBL.n0
lda $c080,y
@ -190,7 +198,7 @@ K.IrqH.Switch inc IRQ.Tick
.8 clc exit with V flag set
rts
*--------------------------------------
*--------------------------------------
K.IrqH.DEV ldx #0
.1 lda IRQ.Vectors+1,x
beq .9

View File

@ -9,6 +9,7 @@ NEW
.INB INC/A2OSX.I
.INB INC/IO.I
.INB INC/IO.IIC.I
.INB INC/IO.IIGS.I
.INB INC/MLI.I
.INB INC/MLI.E.I
.INB INC/NET.TELNET.I