Kernel 0.94

This commit is contained in:
Rémy GIBERT 2020-07-16 08:18:17 +02:00
parent 20bd42eb1f
commit ee18653120
7 changed files with 71 additions and 39 deletions

Binary file not shown.

View File

@ -614,15 +614,15 @@ L3ACE .DO LOWERCASE=1
bne L3ACE
pla get length again
sta VCBs,x and save.
sta VCBs,x and save.
lda devnum last device used.
sta VCBs+VCB.DEV,x save device # and
sta VCBs+VCB.DEV,x save device # and
lda bloknml save address of root directory.
sta VCBs+VCB.ROOT,x
lda bloknml+1
sta VCBs+VCB.ROOT+1,x
* lda bloknml save address of root directory.
* sta VCBs+VCB.ROOT,x
* lda bloknml+1
* sta VCBs+VCB.ROOT+1,x
* ldy #0

View File

@ -205,7 +205,7 @@ gtbmap sta bmadev read bitmap specified by dev and vcb.
lda VCBs+VCB.BMAPIDX,y
sta bmacmap associate offset with bitmap ctrl block.
clc add this # to the base address of
adc VCBs+VCB.BMAP,y 1st bitmap and save in bmadadr which
adc VCBs+VCB.BMAP,y 1st bitmap and save in bmadadr which
sta bmadadr is address of bitmap to be used.
lda VCBs+VCB.BMAP+1,y
@ -803,7 +803,7 @@ L4147 pha save error code.
ldy fcbptr since error was before file was
L4156 lda #$00 successfully opened, then it is
sta FCBs,y necessary to release fcb also.
sta FCBs,y necessary to release fcb also.
pla error code.
sec
rts
@ -812,16 +812,16 @@ L415E jsr rfcbdat read in 1st block of directory file.
bcs L4147 return error after freeing buffer & fcb.
L4163 ldx vcbptr index to vcb.
inc VCBs+VCB.OFCNT,x add 1 to # of files currently open
inc VCBs+VCB.OFCNT,x add 1 to # of files currently open
* sec and indicate that this volume has at
* ror VCBs+VCB.OF,x least 1 file active.
* ror VCBs+VCB.OF,x least 1 file active.
ldy fcbptr index to fcb.
lda FCBs,y return ref # to user.
lda FCBs,y return ref # to user.
ldy #$05
sta (A3L),y
clc open is successful
* clc open is successful
rts
*--------------------------------------
tstopen lda #$00

View File

@ -332,7 +332,7 @@ L485F jsr tkfrecnt force free block count before releasing
ora dseed+1
bne L48A2 branch if no adjustment necessary.
lda dsap get correct block ositions for sap
lda dsap get correct block positions for sap
sec and tree levels.
sbc #$01
sta dsap deallocate for last (phantom) block
@ -476,7 +476,7 @@ XDOS.GetFileInfoEx
dex
bpl .3
* clc
clc
.9 rts
*--------------------------------------
XDOS.GetFileInfo
@ -497,12 +497,12 @@ XDOS.GetFileInfo
jsr tkfrecnt get a fresh count of free blocks on
ldx vcbptr this volume.
lda VCBs+VCB.FBLK+1,x return total blocks and total in use.
lda VCBs+VCB.FBLK+1,x return total blocks and total in use.
sta reqh 1st transfer 'free' blocks to zpage
lda VCBs+VCB.FBLK,x for later subtraction to determine
lda VCBs+VCB.FBLK,x for later subtraction to determine
sta reql the 'used' count.
lda VCBs+VCB.TBLK+1,x transfer to 'd.' table as aux id
lda VCBs+VCB.TBLK+1,x transfer to 'd.' table as aux id
sta d_auxid+1 (total block count is considered aux id
pha for the volume)
lda VCBs+VCB.TBLK,x
@ -536,7 +536,7 @@ L49A4 rts
*--------------------------------------
XDOS.SetFileInfoEx
jsr findfile
bcs .9
bcs L49A4
ldx #S.FIEX.BLKPTR+2-1
ldy #S.FIEX.BLKPTR+2-1+3
@ -557,8 +557,6 @@ XDOS.SetFileInfoEx
bpl .3
jmp drevise1
.9 rts
*--------------------------------------
XDOS.SetACL clc
rts

View File

@ -1,6 +1,8 @@
NEW
AUTO 3,1
*--------------------------------------
XRW.DEBUG .EQ 0
*--------------------------------------
XRW.START cld $D8 to flag language card bank 1 (main)
lda unitnum get unit number.
@ -189,9 +191,9 @@ regrwts ldy #1
dec XRW.RecalibrateCnt
sec
bmi .9
.DO XRW.DEBUG=1
jsr XRW.DEBUG
.FIN
ldy XRW.UnitIndex
lda #41
@ -729,16 +731,16 @@ XRW.Seek ldx XRW.UnitIndex
jsr XRW.Trk2Qtrk
sta XRW.TargetQTrack
.DO XRW.DEBUG=1
jsr XRW.DEBUG3
.FIN
lda XRW.D2Trk-1,x
jsr XRW.Trk2Qtrk
sta XRW.CurrentQTrack
.DO XRW.DEBUG=1
jsr XRW.DEBUG2
.FIN
pla
sta XRW.D2Trk-1,x will be current track at the end
@ -896,6 +898,7 @@ XRW.ReadAddr ldy #$FC
rderr sec
rts
*--------------------------------------
.DO XRW.DEBUG=1
XRW.DEBUG phx
ldx #26
@ -945,6 +948,7 @@ XRW.DEBUG.PRINT
.8 sta $700,x
inx
rts
.FIN
*--------------------------------------
.LIST ON
XRW.FREE .EQ $D540-*

View File

@ -147,22 +147,21 @@ FCB.F.STMOD .EQ 8
FCB.NLBYTE .EQ 10
FCB.BUFID .EQ 11
FCB.IBLK .EQ 14
FCB.EOF .EQ 21
FCB.EOF .EQ 21 3 bytes
FCB.FLEVEL .EQ 27
FCB.NLMASK .EQ 31
FCB .EQ 32
*--------------------------------------
VCBs .EQ $D900
VCB.DEV .EQ 16
*VCB.OF .EQ 17
VCB.TBLK .EQ 18
VCB.FBLK .EQ 20
VCB.ROOT .EQ 22
VCB.BMAP .EQ 26
VCB.BMAPIDX .EQ 28
VCB.OFCNT .EQ 30
VCB.OFCNT .EQ 17
VCB.BMAP .EQ 18
VCB.TBLK .EQ 20
VCB.FBLK .EQ 22
VCB.ROOT .EQ 24
VCB.BMAPIDX .EQ 26
*
VCB .EQ 32
VCB .EQ 27
*--------------------------------------
bmbuf .EQ $DA00 512 byte bitmap buffer
gbuf .EQ $DC00 general purpose 512 byte block buffer

View File

@ -236,10 +236,41 @@ PWD.GetGR.99 lda #E.IUSR
sec
PWD.GetGR.RTS rts
*--------------------------------------
PWDX.GetGRName
lda #E.IPWDDB
sec
rts
PWDX.GetGRName lda PWD.hGrpDB
beq PWD.GetGR.9
jsr K.GetmemPtr
>STYA ZPPtr3
ldy #0
jsr SHARED.TXTPTR.GetY
beq PWD.GetGR.99
.1 lda (ZPPtr3)
beq PWD.GetGR.99
ldy #$ff
.2 iny
jsr SHARED.TXTPTR.GetY
beq .4
cmp (ZPPtr3),y
beq .2
.3 jsr PWD.NextLine
bra .1
.4 lda (ZPPtr3),y
cmp #':'
bne .3
ldx FORPNT+1
beq .8
jmp PWD.Record2GR
.8 iny
jmp PWD.GetByte get GID
*--------------------------------------
PWDX.PutGR lda PWD.hGrpDB
beq PWD.GetGR.9