Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-10-28 17:35:04 +01:00
parent 9c02fb8bb5
commit 142e85c8a4
8 changed files with 59 additions and 19 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -435,6 +435,8 @@ WRITE php
>AR.SELECT S0.TX.FSR
lda W5100.DR,x get send size HI
nop
nop
ldy W5100.DR,x LO
cpy RXTX.Size
sbc RXTX.Size+1
@ -453,6 +455,8 @@ WRITE php
>AR.SELECT S0.TX.WR
lda W5100.DR,x Get HI
nop
nop
ldy W5100.DR,x Get LO
and /RXTX.MASK
ora /TX.BASE

View File

@ -4,7 +4,7 @@ NEW
IO.D2.SeekTimeR .EQ 160 LIBBLKDEV Recalibration
IO.D2.SeekTimeF .EQ 140 LIBBLKDEV Track Formatter
IO.D2.SeekTimeB .EQ 140 LIBBLKDEV Boot Block
IO.D2.SeekTimeP .EQ 75 ProDOS.FX initial
IO.D2.SeekTimeP .EQ 50 ProDOS.FX initial
IO.D2.SeekTimeI .EQ 20 ProDOS.FX increment -> until > 128
*--------------------------------------
IO.D2.Ph0Off .EQ $C080
@ -25,8 +25,8 @@ IO.D2.DrvSel2 .EQ $C08B
IO.D2.WShift .EQ $C08C R
IO.D2.RData .EQ $C08C R
IO.D2.WLoad .EQ $C08D W
IO.D2.ReadProt .EQ $C08D R
IO.D2.WLoad .EQ $C08D W
IO.D2.ReadMode .EQ $C08E R
IO.D2.WriteMode .EQ $C08F W

View File

@ -1,6 +1,36 @@
NEW
AUTO 3,1
*--------------------------------------
* MBAR.New(*S.MBITEM mbitems)
*--------------------------------------
MBAR.New >LDYAI S.MBAR
>SYSCALL2 getmem
bcs .99
>STYA ZPMENUPtr
lda #S.OBJ.T.MBAR
sta (ZPMENUPtr) S.OBJ.T
lda #0
ldy #S.MBAR-1
.1 sta (ZPMENUPtr),y
dey
bne .1
>PULLA
ldy #S.MBAR.MBITEMS
sta (ZPMENUPtr),y
>PULLA
iny
sta (ZPMENUPtr),y
clc
rts
*--------------------------------------
MBAR.Init >STYA ZPMENUPtr
>STYA ZPPtr1
@ -21,7 +51,7 @@ MBAR.Init >STYA ZPMENUPtr
lda ZPPtr1+1
adc #0
ldx hSYSFONB
ldx hSYSFON
jsr FON.GetTextSize
ldy #S.MBITEM.X1

View File

@ -854,7 +854,7 @@ WND.PaintMBar lda #S.CB.CMD.FILLRECT
lda #S.CB.M.MONO
sta CB.Cache+S.CB.M
lda hSYSFONB
lda hSYSFON
sta CB.CACHE+S.CB.hFont
ldy #S.MBITEM.XT

View File

@ -406,13 +406,17 @@ L596F ldy #$FF index to last byte of data to write.
* on exit: carry set if error (write protect violation).
* if no error, acc=uncertain, x=unchanged, y=0, carry clear.
*--------------------------------------
XRW.Write lda IO.D2.ReadProt,x
lda IO.D2.ReadMode,x
lda nbuf2
XRW.Write lda nbuf2
sta pcl
lda #$FF sync data.
*.1 bit IO.D2.RData,x make sure past $EB
* bpl .1
bit IO.D2.ReadProt,x PREWRITE MODE
bit IO.D2.ReadMode,x
lda #$FF Self Sync Byte
sta IO.D2.WriteMode,x (5) goto write mode
ora IO.D2.WShift,x (4)
ldy #$04 (2) for five nibls
@ -929,27 +933,29 @@ XRW.ReadAddr ldy #$FC
tay if final checksum non-zero,
bne .99 then error.
ldy XRW.UnitIndex
clc Anticipate success...
.9 lda IO.D2.RData,x
bpl .9
cmp #$DE
eor #$DE
bne .99
lda XRW.AddrField.V ....save time doing it now
sta XRW.D2VolNum-1,y
.10 lda IO.D2.RData,x
bpl .10
cmp #$AA
eor #$AA
bne .99
ldy XRW.UnitIndex Successful Read, update Drive table
lda XRW.AddrField.V
sta XRW.D2VolNum-1,y
lda XRW.AddrField.T
lda XRW.AddrField.T Successful Read, update Drive table
sta XRW.D2Trk-1,y and exit with A = Trk
clc normal read ok
* clc normal read ok
rts
.99 sec
@ -987,7 +993,7 @@ XRW.DEBUG31 jsr XRW.DEBUG.PRINT
rts
XRW.DEBUG.PRINT
* sta CLRPAGE2
pha
lsr
lsr