mirror of
https://github.com/A2osX/A2osX.git
synced 2024-06-12 04:29:31 +00:00
Kernel 0.94
This commit is contained in:
parent
8bd9a2e46c
commit
c196c2071a
Binary file not shown.
|
@ -41,31 +41,31 @@ Kernel.Init2 sei
|
||||||
lda /A2osX.AUX.S
|
lda /A2osX.AUX.S
|
||||||
eor #$ff
|
eor #$ff
|
||||||
pha
|
pha
|
||||||
|
|
||||||
ldy #0
|
ldy #0
|
||||||
|
|
||||||
sta SETWRITEAUX
|
sta SETWRITEAUX
|
||||||
|
|
||||||
.2 inx
|
.2 inx
|
||||||
bne .3
|
bne .3
|
||||||
|
|
||||||
pla
|
pla
|
||||||
inc
|
inc
|
||||||
beq .4
|
beq .4
|
||||||
|
|
||||||
pha
|
pha
|
||||||
|
|
||||||
.3 lda (ZPPtr1),y
|
.3 lda (ZPPtr1),y
|
||||||
sta (ZPPtr2),y
|
sta (ZPPtr2),y
|
||||||
iny
|
iny
|
||||||
bne .2
|
bne .2
|
||||||
|
|
||||||
inc ZPPtr1+1
|
inc ZPPtr1+1
|
||||||
inc ZPPtr2+1
|
inc ZPPtr2+1
|
||||||
bra .2
|
bra .2
|
||||||
|
|
||||||
.4 sta CLRWRITEAUX
|
.4 sta CLRWRITEAUX
|
||||||
|
|
||||||
>LDYA PAKME.GP
|
>LDYA PAKME.GP
|
||||||
>STYA ZPInBufPtr
|
>STYA ZPInBufPtr
|
||||||
>LDYAI A2osX.SYSCALL
|
>LDYAI A2osX.SYSCALL
|
||||||
|
@ -79,7 +79,7 @@ Kernel.Init2 sei
|
||||||
>STYA ZPInBufPtr
|
>STYA ZPInBufPtr
|
||||||
>LDYAI $D000
|
>LDYAI $D000
|
||||||
jsr A2osX.Unpak
|
jsr A2osX.Unpak
|
||||||
|
|
||||||
bit RRAMWRAMBNK1
|
bit RRAMWRAMBNK1
|
||||||
bit RRAMWRAMBNK1
|
bit RRAMWRAMBNK1
|
||||||
|
|
||||||
|
@ -120,7 +120,7 @@ Kernel.Init3 sta SETALTZP
|
||||||
sta SET80DISP
|
sta SET80DISP
|
||||||
sta SET80STORE
|
sta SET80STORE
|
||||||
sta CLRPAGE2
|
sta CLRPAGE2
|
||||||
|
|
||||||
bit RDIOUDIS
|
bit RDIOUDIS
|
||||||
sta SETIOUDIS
|
sta SETIOUDIS
|
||||||
sta SETDHIRES
|
sta SETDHIRES
|
||||||
|
@ -153,7 +153,7 @@ Kernel.Init3 sta SETALTZP
|
||||||
>PUSHWZ Aux type
|
>PUSHWZ Aux type
|
||||||
>SYSCALL2 fopen
|
>SYSCALL2 fopen
|
||||||
bcs *
|
bcs *
|
||||||
|
|
||||||
ldy #S.PS.hStdIn
|
ldy #S.PS.hStdIn
|
||||||
sta (pPS),y
|
sta (pPS),y
|
||||||
iny #S.PS.hStdOut
|
iny #S.PS.hStdOut
|
||||||
|
@ -166,7 +166,7 @@ Kernel.Init3C >PUSHWI MSG.Init3
|
||||||
>SYSCALL2 printf
|
>SYSCALL2 printf
|
||||||
|
|
||||||
jsr HW.Detect
|
jsr HW.Detect
|
||||||
|
|
||||||
jsr CPU.Init.6502
|
jsr CPU.Init.6502
|
||||||
|
|
||||||
jsr CPU.Init.Z80
|
jsr CPU.Init.Z80
|
||||||
|
@ -187,12 +187,12 @@ Kernel.Init3C >PUSHWI MSG.Init3
|
||||||
>PUSHWI SBININITD
|
>PUSHWI SBININITD
|
||||||
>PUSHBI 2
|
>PUSHBI 2
|
||||||
>SYSCALL PrintF
|
>SYSCALL PrintF
|
||||||
|
|
||||||
>PUSHWI SBININITD
|
>PUSHWI SBININITD
|
||||||
>PUSHBI 0 PS Flags
|
>PUSHBI 0 PS Flags
|
||||||
>SYSCALL2 ExecL
|
>SYSCALL2 ExecL
|
||||||
bcs Kernel.Init3.Err
|
bcs Kernel.Init3.Err
|
||||||
|
|
||||||
>PUSHWI MSG.Init3.OK
|
>PUSHWI MSG.Init3.OK
|
||||||
>PUSHBI 0
|
>PUSHBI 0
|
||||||
>SYSCALL2 printf
|
>SYSCALL2 printf
|
||||||
|
@ -206,7 +206,7 @@ Kernel.Init3.Err
|
||||||
>PUSHA
|
>PUSHA
|
||||||
>PUSHBI 1
|
>PUSHBI 1
|
||||||
>SYSCALL2 printf
|
>SYSCALL2 printf
|
||||||
bra * No need to discard Expanded CMDLINE
|
bra * No need to discard Expanded CMDLINE
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* INIT2 Subs
|
* INIT2 Subs
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -219,7 +219,7 @@ KConfigLoad >LDYAI MSG.KCREAD
|
||||||
bcc .1
|
bcc .1
|
||||||
eor #MLI.E.BADCALL
|
eor #MLI.E.BADCALL
|
||||||
beq .2 regular ProDOS
|
beq .2 regular ProDOS
|
||||||
|
|
||||||
ror CORE.FSID Bad file, but ProDOS.FX detected
|
ror CORE.FSID Bad file, but ProDOS.FX detected
|
||||||
bra .9
|
bra .9
|
||||||
|
|
||||||
|
@ -250,11 +250,11 @@ KConfigLoad >LDYAI MSG.KCREAD
|
||||||
bra .8
|
bra .8
|
||||||
|
|
||||||
.9 >LDYAI MSG.KCREAD.KO
|
.9 >LDYAI MSG.KCREAD.KO
|
||||||
|
|
||||||
.8 jsr PrintFYA
|
.8 jsr PrintFYA
|
||||||
lda CORE.FSID
|
lda CORE.FSID
|
||||||
beq .99
|
beq .99
|
||||||
|
|
||||||
>LDYAI MSG.PRODOSFX
|
>LDYAI MSG.PRODOSFX
|
||||||
jsr PrintFYA
|
jsr PrintFYA
|
||||||
|
|
||||||
|
@ -278,11 +278,11 @@ MemMgrInit >LDYAI Mem.MHiMem
|
||||||
sta CLRWRITEAUX
|
sta CLRWRITEAUX
|
||||||
|
|
||||||
ldx #K.DEV.MAX*2-1
|
ldx #K.DEV.MAX*2-1
|
||||||
|
|
||||||
.1 stz Dev.Table,x
|
.1 stz Dev.Table,x
|
||||||
dex
|
dex
|
||||||
bpl .1
|
bpl .1
|
||||||
|
|
||||||
ldx #K.FLT.MAX*2-1
|
ldx #K.FLT.MAX*2-1
|
||||||
|
|
||||||
.11 stz Flt.Table.hPath,x
|
.11 stz Flt.Table.hPath,x
|
||||||
|
@ -331,14 +331,14 @@ SysScrInit >LDYAI Mem.XHiMem
|
||||||
|
|
||||||
>SYSCALL2 MKDev
|
>SYSCALL2 MKDev
|
||||||
bcs .9
|
bcs .9
|
||||||
|
|
||||||
ldx A2osX.TTYDEVS
|
ldx A2osX.TTYDEVS
|
||||||
|
|
||||||
.1 phx
|
.1 phx
|
||||||
inc FD.TTY+S.FD.DEV.DEVID
|
inc FD.TTY+S.FD.DEV.DEVID
|
||||||
inc FD.TTY.NAME+3
|
inc FD.TTY.NAME+3
|
||||||
jsr SysScrInit.TTYPtrs
|
jsr SysScrInit.TTYPtrs
|
||||||
|
|
||||||
>PUSHWI FD.TTY
|
>PUSHWI FD.TTY
|
||||||
>PUSHWI FD.TTY.NAME
|
>PUSHWI FD.TTY.NAME
|
||||||
|
|
||||||
|
@ -359,7 +359,7 @@ SysScrInit.TTYPtrs
|
||||||
sta FD.TTY+S.FD.DEV.DCBPTR
|
sta FD.TTY+S.FD.DEV.DCBPTR
|
||||||
sta .1+1
|
sta .1+1
|
||||||
tay
|
tay
|
||||||
|
|
||||||
lda FD.TTY+S.FD.DEV.DCBPTR+1
|
lda FD.TTY+S.FD.DEV.DCBPTR+1
|
||||||
sbc /TTY.BUF.SIZE+S.DCB.TTY
|
sbc /TTY.BUF.SIZE+S.DCB.TTY
|
||||||
sta FD.TTY+S.FD.DEV.DCBPTR+1
|
sta FD.TTY+S.FD.DEV.DCBPTR+1
|
||||||
|
@ -368,7 +368,7 @@ SysScrInit.TTYPtrs
|
||||||
ldx #S.DCB.TTY-1
|
ldx #S.DCB.TTY-1
|
||||||
|
|
||||||
sta SETWRITEAUX
|
sta SETWRITEAUX
|
||||||
|
|
||||||
.1 stz $ffff,x SELF MODIFIED
|
.1 stz $ffff,x SELF MODIFIED
|
||||||
dex
|
dex
|
||||||
bpl .1
|
bpl .1
|
||||||
|
@ -376,7 +376,7 @@ SysScrInit.TTYPtrs
|
||||||
>STYA Mem.HiMem
|
>STYA Mem.HiMem
|
||||||
>STYA Mem.Free
|
>STYA Mem.Free
|
||||||
sta CLRWRITEAUX
|
sta CLRWRITEAUX
|
||||||
|
|
||||||
rts
|
rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
* http://www.1000bit.it/support/manuali/apple/technotes/misc/tn.misc.02.html
|
* http://www.1000bit.it/support/manuali/apple/technotes/misc/tn.misc.02.html
|
||||||
|
@ -387,20 +387,20 @@ HW.Detect >PUSHWI MSG.HW
|
||||||
>SYSCALL2 printf
|
>SYSCALL2 printf
|
||||||
|
|
||||||
bit RROMBNK1
|
bit RROMBNK1
|
||||||
|
|
||||||
stz A2osX.HWType
|
stz A2osX.HWType
|
||||||
stz A2osX.HWSubT
|
stz A2osX.HWSubT
|
||||||
|
|
||||||
sec
|
sec
|
||||||
jsr $FE1F IIgs ?
|
jsr $FE1F IIgs ?
|
||||||
bcs .2
|
bcs .2
|
||||||
|
|
||||||
lda #A2osX.HWType.IIgs
|
lda #A2osX.HWType.IIgs
|
||||||
sta A2osX.HWType
|
sta A2osX.HWType
|
||||||
|
|
||||||
cpy #2
|
cpy #2
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
iny
|
iny
|
||||||
|
|
||||||
.1 sty A2osX.HWSubT
|
.1 sty A2osX.HWSubT
|
||||||
|
@ -408,28 +408,28 @@ HW.Detect >PUSHWI MSG.HW
|
||||||
|
|
||||||
.2 lda $FBC0
|
.2 lda $FBC0
|
||||||
beq .4 //c
|
beq .4 //c
|
||||||
|
|
||||||
ldx #A2osX.HWType.IIe
|
ldx #A2osX.HWType.IIe
|
||||||
stx A2osX.HWType
|
stx A2osX.HWType
|
||||||
cmp #$EA
|
cmp #$EA
|
||||||
beq .8 //e OLD ROMs
|
beq .8 //e OLD ROMs
|
||||||
|
|
||||||
inc A2osX.HWSubT //e Enh ROMs
|
inc A2osX.HWSubT //e Enh ROMs
|
||||||
lda $FBDD
|
lda $FBDD
|
||||||
cmp #2
|
cmp #2
|
||||||
bne .8
|
bne .8
|
||||||
|
|
||||||
inc A2osX.HWSubT //e LC card
|
inc A2osX.HWSubT //e LC card
|
||||||
bra .8
|
bra .8
|
||||||
|
|
||||||
.4 lda #A2osX.HWType.IIc
|
.4 lda #A2osX.HWType.IIc
|
||||||
sta A2osX.HWType
|
sta A2osX.HWType
|
||||||
lda $FBBF
|
lda $FBBF
|
||||||
sta A2osX.HWSubT
|
sta A2osX.HWSubT
|
||||||
|
|
||||||
.8 bit RRAMWRAMBNK1
|
.8 bit RRAMWRAMBNK1
|
||||||
bit RRAMWRAMBNK1
|
bit RRAMWRAMBNK1
|
||||||
|
|
||||||
>PUSHWI MSG.HW.TypeSubT
|
>PUSHWI MSG.HW.TypeSubT
|
||||||
>PUSHB A2osX.HWType
|
>PUSHB A2osX.HWType
|
||||||
>PUSHB A2osX.HWSubT
|
>PUSHB A2osX.HWSubT
|
||||||
|
@ -451,127 +451,110 @@ CPU.Init.6502 >PUSHWI MSG.CPU
|
||||||
>SYSCALL2 puts
|
>SYSCALL2 puts
|
||||||
|
|
||||||
>PUSHWI MSG.CPU.SPEED
|
>PUSHWI MSG.CPU.SPEED
|
||||||
>PUSHBI 0
|
>PUSHB A2osX.HZ
|
||||||
|
>PUSHBI 1
|
||||||
>SYSCALL2 printf
|
>SYSCALL2 printf
|
||||||
|
|
||||||
stz A2osX.RANDOM16
|
ldy #0
|
||||||
stz A2osX.RANDOM16+1
|
stz A2osX.RANDOM16+1
|
||||||
|
|
||||||
php
|
php
|
||||||
sei
|
sei
|
||||||
|
|
||||||
lda A2osX.HZ if 50hz -> 6 loops
|
ldx A2osX.HZ
|
||||||
eor #3 if 60hz -> 5 loops
|
|
||||||
pha
|
lda A2osX.HZ2Cnt-5,x
|
||||||
|
asl
|
||||||
|
tax 2 VBL states (up & down)
|
||||||
|
clc CC for //e
|
||||||
|
|
||||||
clc
|
|
||||||
lda MACHID
|
lda MACHID
|
||||||
and #MACHID.T
|
and #MACHID.T
|
||||||
eor #MACHID.T.IIc
|
eor #MACHID.T.IIc
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
sec
|
txa if //c, only one change (IRQ up)
|
||||||
.1 ror ZPPtr1 save //c flag
|
lsr
|
||||||
|
tax
|
||||||
|
sec CS for //c
|
||||||
|
|
||||||
bpl .11
|
|
||||||
|
|
||||||
sta CLRIOUDIS
|
sta CLRIOUDIS
|
||||||
lda IO.IIC.RDVBLMSK
|
lda IO.IIC.RDVBLMSK
|
||||||
sta ZPPtr1+1 Save VBLIRQ enable
|
sta ZPPtr1+1 Save VBLIRQ enable
|
||||||
|
|
||||||
sta IO.IIC.ENVBL
|
sta IO.IIC.ENVBL
|
||||||
lda IO.IIC.CLRVBLIRQ
|
lda IO.IIC.CLRVBLIRQ
|
||||||
|
|
||||||
ldx #2
|
|
||||||
|
|
||||||
.11 bit VBL
|
|
||||||
bpl .11
|
|
||||||
|
|
||||||
dex
|
|
||||||
|
|
||||||
bit ZPPtr1 //c ?
|
|
||||||
bpl .2
|
|
||||||
|
|
||||||
lda IO.IIC.CLRVBLIRQ yes, clear IRQ
|
|
||||||
|
|
||||||
lda #0 A = LOW
|
.1 bit VBL Wait VBL high....
|
||||||
bra .22
|
bpl .1
|
||||||
|
|
||||||
.2 lda VBL
|
bcc .2 skip if //e
|
||||||
|
|
||||||
|
lda IO.IIC.CLRVBLIRQ clear //c IRQ
|
||||||
|
lda #0 reset A = LOW
|
||||||
|
|
||||||
|
bra .3
|
||||||
|
|
||||||
|
.2 lda VBL //e : wait VBL low
|
||||||
bmi .2
|
bmi .2
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.20 ply
|
.3 nop (2)
|
||||||
phy
|
nop (2)
|
||||||
|
nop (2)
|
||||||
|
|
||||||
.22 nop (2)
|
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
|
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
|
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
|
||||||
nop (2)
|
iny (2)
|
||||||
nop (2)
|
bne .4 (2*)
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
nop (2)
|
|
||||||
|
|
||||||
inc A2osX.RANDOM16 (6)
|
|
||||||
bne .5 (2*)
|
|
||||||
|
|
||||||
inc A2osX.RANDOM16+1 (6)
|
inc A2osX.RANDOM16+1 (6)
|
||||||
|
|
||||||
bra .6 (3) 2+6+3
|
bra .5 (3) 2+6+3
|
||||||
|
|
||||||
.5 nop (2)
|
.4 nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
nop (2)
|
nop (2)
|
||||||
|
|
||||||
nop (2) 3+2+2+2+2 if from BNE
|
nop (2) 3+2+2+2+2 if from BNE
|
||||||
|
|
||||||
.6 dey
|
|
||||||
bne .22
|
|
||||||
|
|
||||||
eor VBL (4)
|
|
||||||
bpl .20 (2*)
|
|
||||||
|
|
||||||
bit ZPPtr1 //c ?
|
.5 eor VBL (4)
|
||||||
bmi .31
|
bpl .3 (2*)
|
||||||
|
|
||||||
.3 dex
|
|
||||||
bne .20
|
|
||||||
bra .60
|
|
||||||
|
|
||||||
.31 lda IO.IIC.CLRVBLIRQ yes, clear IRQ
|
bcc .51 skip if //e
|
||||||
|
|
||||||
bit ZPPtr1+1 Disable VBLIRQ ?
|
lda IO.IIC.CLRVBLIRQ clear //c IRQ
|
||||||
|
lda #0 reset A = LOW
|
||||||
|
|
||||||
|
.51 dex
|
||||||
|
bne .3
|
||||||
|
|
||||||
|
bcc .60 skip if //e
|
||||||
|
|
||||||
|
bit ZPPtr1+1 Disable VBLIRQ ?
|
||||||
bpl .60
|
bpl .60
|
||||||
|
|
||||||
sta IO.IIC.DISVBL
|
sta IO.IIC.DISVBL
|
||||||
|
|
||||||
|
.60 plp
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
.60 ply
|
sty A2osX.RANDOM16
|
||||||
|
|
||||||
stz A2osX.CPUSPEED
|
stz A2osX.CPUSPEED
|
||||||
|
|
||||||
.7 sec
|
lsr A2osX.RANDOM16+1
|
||||||
lda A2osX.RANDOM16
|
ror A2osX.RANDOM16
|
||||||
|
|
||||||
|
.7 lda A2osX.RANDOM16
|
||||||
|
sec
|
||||||
sbc #100
|
sbc #100
|
||||||
tax
|
tax
|
||||||
lda A2osX.RANDOM16+1
|
lda A2osX.RANDOM16+1
|
||||||
|
@ -586,8 +569,6 @@ CPU.Init.6502 >PUSHWI MSG.CPU
|
||||||
.8 lda A2osX.RANDOM16
|
.8 lda A2osX.RANDOM16
|
||||||
sta A2osX.CPUSPEED+1
|
sta A2osX.CPUSPEED+1
|
||||||
|
|
||||||
plp
|
|
||||||
|
|
||||||
>PUSHWI MSG.CPU.SPEEDOK
|
>PUSHWI MSG.CPU.SPEEDOK
|
||||||
lda A2osX.CPUSPEED
|
lda A2osX.CPUSPEED
|
||||||
>PUSHA push CPU speed HI
|
>PUSHA push CPU speed HI
|
||||||
|
@ -607,7 +588,7 @@ CPU.Init.Z80 >PUSHWI MSG.Z80
|
||||||
tax
|
tax
|
||||||
lda #A2osX.S.Z80
|
lda #A2osX.S.Z80
|
||||||
sta A2osX.S,x
|
sta A2osX.S,x
|
||||||
|
|
||||||
>PUSHWI MSG.Z80.OK
|
>PUSHWI MSG.Z80.OK
|
||||||
lda A2osX.Z80SLOT
|
lda A2osX.Z80SLOT
|
||||||
>PUSHA
|
>PUSHA
|
||||||
|
@ -710,7 +691,7 @@ DevMgrInit >LDYAI MSG.DEV
|
||||||
lda DEVPTRS+1,x
|
lda DEVPTRS+1,x
|
||||||
sta FD.BDEV+S.FD.DEV.BUSPTR+1
|
sta FD.BDEV+S.FD.DEV.BUSPTR+1
|
||||||
|
|
||||||
sta ZPPtr1+1
|
sta ZPPtr1+1
|
||||||
stz ZPPtr1 Cn00
|
stz ZPPtr1 Cn00
|
||||||
plp
|
plp
|
||||||
lda #0
|
lda #0
|
||||||
|
@ -736,7 +717,7 @@ DevMgrInit >LDYAI MSG.DEV
|
||||||
.3 bcs .53 > $D0, Some BLK remapped DRV
|
.3 bcs .53 > $D0, Some BLK remapped DRV
|
||||||
|
|
||||||
cmp #$C0
|
cmp #$C0
|
||||||
bcs .4 $C0 .. $CF, in slot ROM
|
bcs .4 $C0 .. $CF, in slot ROM
|
||||||
|
|
||||||
jsr DevMgrInit.USR Outside ROM/LC space, User loaded BLK dev
|
jsr DevMgrInit.USR Outside ROM/LC space, User loaded BLK dev
|
||||||
bra .8 keep slot free
|
bra .8 keep slot free
|
||||||
|
@ -758,10 +739,10 @@ DevMgrInit >LDYAI MSG.DEV
|
||||||
jsr DevMgrInit.SP
|
jsr DevMgrInit.SP
|
||||||
lda #A2osX.S.SP
|
lda #A2osX.S.SP
|
||||||
bra .7
|
bra .7
|
||||||
|
|
||||||
.53 jsr DevMgrInit.RSP Remapped SP devices....
|
.53 jsr DevMgrInit.RSP Remapped SP devices....
|
||||||
bra .8 don't mark slot as busy
|
bra .8 don't mark slot as busy
|
||||||
|
|
||||||
.6 jsr DevMgrInit.BLK
|
.6 jsr DevMgrInit.BLK
|
||||||
lda #A2osX.S.BLK
|
lda #A2osX.S.BLK
|
||||||
|
|
||||||
|
@ -801,7 +782,7 @@ DevMgrInit.RSP ldx #10
|
||||||
DevMgrInit.AddBDev
|
DevMgrInit.AddBDev
|
||||||
>LDYA DRV.BLKDEV,x
|
>LDYA DRV.BLKDEV,x
|
||||||
>STYA FD.BDEV+S.FD.DEV.DRVPTR
|
>STYA FD.BDEV+S.FD.DEV.DRVPTR
|
||||||
|
|
||||||
>PUSHWI MSG.BLKDEV
|
>PUSHWI MSG.BLKDEV
|
||||||
>PUSHWI FD.BDEV.NAME
|
>PUSHWI FD.BDEV.NAME
|
||||||
>PUSHW FD.BDEV+S.FD.DEV.BUSPTR
|
>PUSHW FD.BDEV+S.FD.DEV.BUSPTR
|
||||||
|
@ -820,7 +801,7 @@ DevMgrInit.AddBDev.RTS
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
IrqMgrInit >LDYAI MSG.IRQ
|
IrqMgrInit >LDYAI MSG.IRQ
|
||||||
>SYSCALL2 puts
|
>SYSCALL2 puts
|
||||||
|
|
||||||
php
|
php
|
||||||
sei
|
sei
|
||||||
>LDYA $FFFE
|
>LDYA $FFFE
|
||||||
|
@ -841,24 +822,24 @@ IrqMgrInit >LDYAI MSG.IRQ
|
||||||
lda A2osX.HWType
|
lda A2osX.HWType
|
||||||
cmp #A2osX.HWType.IIgs
|
cmp #A2osX.HWType.IIgs
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
lda #"G"
|
lda #"G"
|
||||||
sta IRQ.Mode
|
sta IRQ.Mode
|
||||||
|
|
||||||
lda #$08
|
lda #$08
|
||||||
tsb IO.IIGS.INTEN
|
tsb IO.IIGS.INTEN
|
||||||
|
|
||||||
jsr IrqMgrInit.HZ2Tick
|
jsr IrqMgrInit.HZ2Tick
|
||||||
|
|
||||||
>LDYAI K.IrqH.IIGS
|
>LDYAI K.IrqH.IIGS
|
||||||
jsr IrqMgrInit.SetV
|
jsr IrqMgrInit.SetV
|
||||||
|
|
||||||
>LDYAI MSG.IRQ.IIGS
|
>LDYAI MSG.IRQ.IIGS
|
||||||
bra .8
|
bra .8
|
||||||
|
|
||||||
.1 cmp #A2osX.HWType.IIc
|
.1 cmp #A2osX.HWType.IIc
|
||||||
beq .2
|
beq .2
|
||||||
|
|
||||||
jsr IrqMgrInit.TClock
|
jsr IrqMgrInit.TClock
|
||||||
bcs .2
|
bcs .2
|
||||||
|
|
||||||
|
@ -866,7 +847,7 @@ IrqMgrInit >LDYAI MSG.IRQ
|
||||||
sta IRQ.Mode
|
sta IRQ.Mode
|
||||||
>LDYAI K.IrqH.TCLOCK
|
>LDYAI K.IrqH.TCLOCK
|
||||||
jsr IrqMgrInit.SetV
|
jsr IrqMgrInit.SetV
|
||||||
|
|
||||||
>LDYAI MSG.IRQ.CLOCK
|
>LDYAI MSG.IRQ.CLOCK
|
||||||
bra .8
|
bra .8
|
||||||
|
|
||||||
|
@ -877,7 +858,7 @@ IrqMgrInit >LDYAI MSG.IRQ
|
||||||
sta IRQ.Mode
|
sta IRQ.Mode
|
||||||
>LDYAI K.IrqH.VBL
|
>LDYAI K.IrqH.VBL
|
||||||
jsr IrqMgrInit.SetV
|
jsr IrqMgrInit.SetV
|
||||||
|
|
||||||
>LDYAI MSG.IRQ.VBL
|
>LDYAI MSG.IRQ.VBL
|
||||||
bra .8
|
bra .8
|
||||||
|
|
||||||
|
@ -886,7 +867,7 @@ IrqMgrInit >LDYAI MSG.IRQ
|
||||||
lda #"P"
|
lda #"P"
|
||||||
sta IRQ.Mode
|
sta IRQ.Mode
|
||||||
>LDYAI MSG.IRQ.POLL
|
>LDYAI MSG.IRQ.POLL
|
||||||
|
|
||||||
.8 >SYSCALL2 puts
|
.8 >SYSCALL2 puts
|
||||||
clc
|
clc
|
||||||
rts
|
rts
|
||||||
|
@ -903,7 +884,7 @@ IrqMgrInit.TClock
|
||||||
stz ZPPtr1 Try finding a TClock Card...
|
stz ZPPtr1 Try finding a TClock Card...
|
||||||
lda #$C1
|
lda #$C1
|
||||||
sta ZPPtr1+1
|
sta ZPPtr1+1
|
||||||
|
|
||||||
.1 ldx #TClock.SIG-TClock.OFS-1
|
.1 ldx #TClock.SIG-TClock.OFS-1
|
||||||
|
|
||||||
.2 ldy TClock.OFS,x
|
.2 ldy TClock.OFS,x
|
||||||
|
@ -919,7 +900,7 @@ IrqMgrInit.TClock
|
||||||
.3 inc ZPPtr1+1 no match, try next slot....
|
.3 inc ZPPtr1+1 no match, try next slot....
|
||||||
lda ZPPtr1+1
|
lda ZPPtr1+1
|
||||||
cmp #$C8
|
cmp #$C8
|
||||||
bne .1
|
bne .1
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
@ -938,7 +919,7 @@ IrqMgrInit.TClock
|
||||||
sei
|
sei
|
||||||
lda #$40+$20 Enable interrupt + 64Hz
|
lda #$40+$20 Enable interrupt + 64Hz
|
||||||
sta $c080,y
|
sta $c080,y
|
||||||
lda #$40
|
lda #$40
|
||||||
sta CLRPAGE2
|
sta CLRPAGE2
|
||||||
sta $478,x
|
sta $478,x
|
||||||
sta $7f8,x
|
sta $7f8,x
|
||||||
|
@ -958,7 +939,7 @@ IrqMgrInit.Mouse
|
||||||
stz ZPPtr1 Try finding a Mouse Card...
|
stz ZPPtr1 Try finding a Mouse Card...
|
||||||
lda #$C1
|
lda #$C1
|
||||||
sta ZPPtr1+1
|
sta ZPPtr1+1
|
||||||
|
|
||||||
.1 ldx #Mouse.SIG-Mouse.OFS-1
|
.1 ldx #Mouse.SIG-Mouse.OFS-1
|
||||||
|
|
||||||
.2 ldy Mouse.OFS,x
|
.2 ldy Mouse.OFS,x
|
||||||
|
@ -971,7 +952,7 @@ IrqMgrInit.Mouse
|
||||||
.3 inc ZPPtr1+1 no match, try next slot....
|
.3 inc ZPPtr1+1 no match, try next slot....
|
||||||
lda ZPPtr1+1
|
lda ZPPtr1+1
|
||||||
cmp #$C8
|
cmp #$C8
|
||||||
bne .1
|
bne .1
|
||||||
|
|
||||||
sec
|
sec
|
||||||
rts
|
rts
|
||||||
|
@ -1034,7 +1015,7 @@ IrqMgrInit.HZ2Tick
|
||||||
asl
|
asl
|
||||||
clc
|
clc
|
||||||
adc A2osX.HZ
|
adc A2osX.HZ
|
||||||
|
|
||||||
asl
|
asl
|
||||||
|
|
||||||
sta CORE.TickPerSec
|
sta CORE.TickPerSec
|
||||||
|
@ -1065,20 +1046,20 @@ TskMgrInit >LDYAI MSG.TSK
|
||||||
|
|
||||||
ldy #S.PS.hENV
|
ldy #S.PS.hENV
|
||||||
sta (pPS),y
|
sta (pPS),y
|
||||||
|
|
||||||
sta SETWRITEAUX
|
sta SETWRITEAUX
|
||||||
lda #0
|
lda #0
|
||||||
sta (ZPPtr1) make sure blank!!
|
sta (ZPPtr1) make sure blank!!
|
||||||
|
|
||||||
sta CLRWRITEAUX
|
sta CLRWRITEAUX
|
||||||
|
|
||||||
>PUSHWI 0
|
>PUSHWI 0
|
||||||
>PUSHWI 0
|
>PUSHWI 0
|
||||||
>SYSCALL OpenSession
|
>SYSCALL OpenSession
|
||||||
bcs .99
|
bcs .99
|
||||||
|
|
||||||
sta S.Table.hSID
|
sta S.Table.hSID
|
||||||
|
|
||||||
ldy #S.PS.hStdIn
|
ldy #S.PS.hStdIn
|
||||||
lda (pPS),y
|
lda (pPS),y
|
||||||
sta S.Table.hFile
|
sta S.Table.hFile
|
||||||
|
@ -1086,7 +1067,7 @@ TskMgrInit >LDYAI MSG.TSK
|
||||||
lda #1
|
lda #1
|
||||||
ldy #S.PS.hSession
|
ldy #S.PS.hSession
|
||||||
sta (pPS),y
|
sta (pPS),y
|
||||||
|
|
||||||
>LDYAI $2E0 Get ROOT from QC
|
>LDYAI $2E0 Get ROOT from QC
|
||||||
>SYSCALL2 strdup
|
>SYSCALL2 strdup
|
||||||
bcs .9
|
bcs .9
|
||||||
|
@ -1126,7 +1107,7 @@ PwdMgrInit >LDYAI MSG.PWD
|
||||||
|
|
||||||
stx PWD.hUsrDB
|
stx PWD.hUsrDB
|
||||||
>STYA PWD.UsrDBSize
|
>STYA PWD.UsrDBSize
|
||||||
|
|
||||||
>LDYAI PWD.ETCGROUP
|
>LDYAI PWD.ETCGROUP
|
||||||
jsr PwdMgrInit.Load
|
jsr PwdMgrInit.Load
|
||||||
bcs .1
|
bcs .1
|
||||||
|
@ -1134,12 +1115,12 @@ PwdMgrInit >LDYAI MSG.PWD
|
||||||
stx PWD.hGrpDB
|
stx PWD.hGrpDB
|
||||||
>STYA PWD.GrpDBSize
|
>STYA PWD.GrpDBSize
|
||||||
|
|
||||||
.1
|
.1
|
||||||
* clc
|
* clc
|
||||||
.9 rts
|
.9 rts
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
PwdMgrInit.Load >PUSHYA
|
PwdMgrInit.Load >PUSHYA
|
||||||
>PUSHBI O.RDONLY
|
>PUSHBI O.RDONLY
|
||||||
>PUSHBI S.FI.T.TXT
|
>PUSHBI S.FI.T.TXT
|
||||||
>PUSHWZ Aux type
|
>PUSHWZ Aux type
|
||||||
>SYSCALL2 LoadStkObj
|
>SYSCALL2 LoadStkObj
|
||||||
|
@ -1171,12 +1152,17 @@ Z80Code.Start .HS 31FF00 START: LD SP,000FFH Init Stack
|
||||||
.HS 00 FLAG: .DB 0
|
.HS 00 FLAG: .DB 0
|
||||||
Z80Code.Size .EQ *-Z80Code.Start
|
Z80Code.Size .EQ *-Z80Code.Start
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
A2osX.HZ2Cnt .DA #30,#25
|
||||||
|
*--------------------------------------
|
||||||
Mouse.OFS .HS 05070B0CFB
|
Mouse.OFS .HS 05070B0CFB
|
||||||
Mouse.SIG .HS 38180120D6
|
Mouse.SIG .HS 38180120D6
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
TClock.OFS .HS 01030507
|
TClock.OFS .HS 01030507
|
||||||
TClock.SIG .HS 08285870
|
TClock.SIG .HS 08285870
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
SmartPort.OFS .HS 010305
|
||||||
|
SmartPort.SIG .HS 200003
|
||||||
|
*--------------------------------------
|
||||||
MSG.Init2 .AZ "A2osX[Stage2]:Init\nRelocating Kernel...\n"
|
MSG.Init2 .AZ "A2osX[Stage2]:Init\nRelocating Kernel...\n"
|
||||||
MSG.HZ .AZ "Kernel SYS Timer Set For %d0 hz Machine.\n"
|
MSG.HZ .AZ "Kernel SYS Timer Set For %d0 hz Machine.\n"
|
||||||
MSG.KCREAD .AZ "Reading Kernel Config File..."
|
MSG.KCREAD .AZ "Reading Kernel Config File..."
|
||||||
|
@ -1231,7 +1217,7 @@ MSG.6502 .AZ "6502."
|
||||||
MSG.65C02 .AZ "65C02."
|
MSG.65C02 .AZ "65C02."
|
||||||
MSG.65R02 .AZ "65R02."
|
MSG.65R02 .AZ "65R02."
|
||||||
MSG.65816 .AZ "65816."
|
MSG.65816 .AZ "65816."
|
||||||
MSG.CPU.SPEED .AZ "Checking CPU Speed..."
|
MSG.CPU.SPEED .AZ "Checking CPU Speed (%d0Hz)..."
|
||||||
MSG.CPU.SPEEDOK .AZ "%d.%02d Mhz.\r\n"
|
MSG.CPU.SPEEDOK .AZ "%d.%02d Mhz.\r\n"
|
||||||
MSG.Z80 .AZ "Checking Z80 CPU..."
|
MSG.Z80 .AZ "Checking Z80 CPU..."
|
||||||
MSG.Z80.OK .AZ "Detected In Slot %d.\r\n"
|
MSG.Z80.OK .AZ "Detected In Slot %d.\r\n"
|
||||||
|
@ -1253,7 +1239,7 @@ MLIGETFILEINFOEX00
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
MLIOPEN00 .DA #3
|
MLIOPEN00 .DA #3
|
||||||
.DA MLIOPEN00.FN
|
.DA MLIOPEN00.FN
|
||||||
.DA $B000
|
.DA $B000
|
||||||
.BS 1
|
.BS 1
|
||||||
MLIOPEN00.FN >PSTR "A2osX.kconfig"
|
MLIOPEN00.FN >PSTR "A2osX.kconfig"
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
|
@ -1298,9 +1284,6 @@ FD.BDEV .DA #S.FD.T.BDEV
|
||||||
.DA 0 BUFPTR
|
.DA 0 BUFPTR
|
||||||
FD.BDEV.NAME .AZ "s1d1"
|
FD.BDEV.NAME .AZ "s1d1"
|
||||||
*--------------------------------------
|
*--------------------------------------
|
||||||
SmartPort.OFS .HS 010305
|
|
||||||
SmartPort.SIG .HS 200003
|
|
||||||
*--------------------------------------
|
|
||||||
MAN
|
MAN
|
||||||
SAVE usr/src/sys/kernel.s.init
|
SAVE usr/src/sys/kernel.s.init
|
||||||
LOAD usr/src/sys/kernel.s
|
LOAD usr/src/sys/kernel.s
|
||||||
|
|
Loading…
Reference in New Issue
Block a user