From d3deb1b49c4547419b74bf5a680af24e17efff22 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Sat, 19 Sep 2020 18:48:28 +0200 Subject: [PATCH] Kernel 0.94 --- .Floppies/A2OSX.BUILD.po | Bin 33553920 -> 33553920 bytes .Floppies/A2OSX.TEST.po | Bin 819200 -> 819200 bytes INC/IO.D2.I.txt | 2 +- ProDOS.FX/ProDOS.S.GP.txt | 2 +- ProDOS.FX/ProDOS.S.IRQ.txt | 2 +- ProDOS.FX/ProDOS.S.XDOS.A.txt | 7 +- ProDOS.FX/ProDOS.S.XDOS.B.txt | 3 +- ProDOS.FX/ProDOS.S.XDOS.C.txt | 156 ++++++++++++++++++---------------- ProDOS.FX/ProDOS.S.XDOS.D.txt | 43 ++++++---- ProDOS.FX/ProDOS.S.XDOS.E.txt | 24 +++--- ProDOS.FX/ProDOS.S.XDOS.F.txt | 4 +- SYS/KERNEL.S.DIRENT.txt | 1 + 12 files changed, 135 insertions(+), 109 deletions(-) diff --git a/.Floppies/A2OSX.BUILD.po b/.Floppies/A2OSX.BUILD.po index f4e6d8ee1c0259fcbfc1e03d876475ff86c576e1..4acd27927c8d7d1f6f20cf462afbd8e60e5980cc 100644 GIT binary patch delta 57177 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

wEh}hwp1ZH{? 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 delta 14265 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 D_pWmx diff --git a/INC/IO.D2.I.txt b/INC/IO.D2.I.txt index 4ad7d7a6..5732e858 100644 --- a/INC/IO.D2.I.txt +++ b/INC/IO.D2.I.txt @@ -4,7 +4,7 @@ NEW IO.D2.SeekTimeR .EQ 160 LIBBLKDEV Recalibration IO.D2.SeekTimeF .EQ 85 LIBBLKDEV Track Formatter IO.D2.SeekTimeB .EQ 85 LIBBLKDEV Boot Block -IO.D2.SeekTimeP .EQ 40 ProDOS.FX initial +IO.D2.SeekTimeP .EQ 60 ProDOS.FX initial IO.D2.SeekTimeI .EQ 20 ProDOS.FX increment -> until > 128 *-------------------------------------- IO.D2.Ph0Off .EQ $C080 diff --git a/ProDOS.FX/ProDOS.S.GP.txt b/ProDOS.FX/ProDOS.S.GP.txt index 5b8e1cbb..517307ac 100644 --- a/ProDOS.FX/ProDOS.S.GP.txt +++ b/ProDOS.FX/ProDOS.S.GP.txt @@ -6,7 +6,7 @@ jspare jmp * will be changed to point to dispatcher. clockv rts changed to jmp ($4C) if clock present. .DA XDOS.ClockDrv clock routine entry address. GP.P8errv jmp XDOS.syserr error reporting hook. -sysdeath jmp sysdeath1 system failure hook. +GP.SysDeath jmp XDOS.SysDeath system failure hook. p8error .DA #0 .DA nodevice .DA nodevice diff --git a/ProDOS.FX/ProDOS.S.IRQ.txt b/ProDOS.FX/ProDOS.S.IRQ.txt index ada16b9e..0ecbae24 100644 --- a/ProDOS.FX/ProDOS.S.IRQ.txt +++ b/ProDOS.FX/ProDOS.S.IRQ.txt @@ -34,7 +34,7 @@ XDOS.IRQV ldx #$FA save 6 bytes of page 0 bne irqdone before system death. lda #$01 bad irq so - jsr sysdeath kill the system. + jsr GP.SysDeath kill the system. .LIST ON IRQ.FREE1 .EQ $ffc8-* diff --git a/ProDOS.FX/ProDOS.S.XDOS.A.txt b/ProDOS.FX/ProDOS.S.XDOS.A.txt index ade1bfa7..9bd24b59 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.A.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.A.txt @@ -225,7 +225,7 @@ XDOS.syserr sta p8error P8 error code sec rts *-------------------------------------- -sysdeath1 tax death error code. +XDOS.SysDeath tax death error code. sta CLR80DISP disable 80 col hardware. lda SETTEXT switch in text. lda cortflag is this a Cortland? @@ -543,8 +543,7 @@ XDOS.GetFCBBufX lda FCBs+FCB.BUFID,x get page address of file buffer. sta datptr index and data buffers always on sta zpt page boundaries. - lda FCBs+FCB.DEVID,x also set up device # - sta devnum + jsr XDOS.FCBDevIDSelect lda #VCB0 @@ -563,7 +562,7 @@ nxtfvol tya adjust index to next vcb. fcbdead lda #$0B fcb error so - jsr sysdeath kill the system. + jsr GP.SysDeath kill the system. tstvopen lda VCBs,y make sure this vcb is open. beq nxtfvol branch if it is not active. diff --git a/ProDOS.FX/ProDOS.S.XDOS.B.txt b/ProDOS.FX/ProDOS.S.XDOS.B.txt index 4b906b43..2144e151 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.B.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.B.txt @@ -79,6 +79,7 @@ H37C2 lda #MLI.E.INVPATH bad path (carry set) *-------------------------------------- lookfil0 stz nofree reset free entry indicator. sec dir to be searched has header in this block. + L37C9 stz totent reset entry counter. jsr XDOS.LookupNameInDirBlk look for name pointed to by pnptr. @@ -94,7 +95,7 @@ L37C9 stz totent reset entry counter. bne L37EB or branch always. L37E2 dec entcnth should be at least one - bpl L37EB so this should be branch always... + bra L37EB branch always... errdir lda #MLI.E.BADDIR directory error fnderr sec diff --git a/ProDOS.FX/ProDOS.S.XDOS.C.txt b/ProDOS.FX/ProDOS.S.XDOS.C.txt index 3e7ed016..807be709 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.C.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.C.txt @@ -37,7 +37,7 @@ XDOS.DeallocAX stx bmcnt high address of block. lda bmcnt get map # ldx vcbptr - sta VCBs+VCB.BMAPIDX,x and make it current. + sta VCBs+VCB.BMAPIDX,x and make it current. lda bmadev jsr gtbmap read it into buffer bcs L3C8B @@ -56,6 +56,7 @@ bmbufhi ora bmbuf,y this address + 2 is used as an absolute reference to bm L3C7D lda #$80 mark bitmap as modified tsb bmastat + inc deblock inc count of blocks deallocated bne L3C8A @@ -190,14 +191,14 @@ L3D60 lda #MLI.E.VOLFULL request can't be filled *-------------------------------------- upbmap clc lda bmastat is current map modified ? - bpl L3D5F no. + bpl .9 no. jsr wrtbmap update device. - bcs L3D5F if error on writing. + bcs .9 if error on writing. stz bmastat mark bitmap buffer as free lda #0 MUST EXIT WITH A=0 - rts +.9 rts *-------------------------------------- gtbmap sta bmadev read bitmap specified by dev and vcb. @@ -230,12 +231,10 @@ wrtbmap lda #$02 write command. lda /bmbuf * lda bmbufhi+2 address of the buffer (low = 0) jsr XDOS.RWBlock - tax error code (if any). - pla restore current dev # - sta devnum - bcc L3DB6 and return it if no error. - txa error code + plx keep A=error code if CS + stx devnum + L3DB6 rts *-------------------------------------- .DO LOWERCASE=1 @@ -404,7 +403,7 @@ XDOS.PackGBuf.Bitmap .BS 2 *-------------------------------------- XDOS.GetMark ldx fcbptr index to open fcb. - ldy #$02 index to user's mark parmeter. + ldy #$02 index to user's mark parameter. .1 lda FCBs+FCB.MARK,x transfer current position sta (A3L),y to user's parameter list @@ -499,7 +498,7 @@ L3E6B ldy fcbptr test to see if current index block ldx levels is it a seed file ? dex - bne datlevel no, use current indexes. + bne datlevel1 no, use current indexes. L3E89 lda tposlh is new position < 512 ? lsr @@ -542,7 +541,7 @@ L3EA9 ldx levels be sure there is a top index sta FCBs+FCB.IBLK,y lda bloknml+1 sta FCBs+FCB.IBLK+1,y - bcc datlevel branch always +datlevel1 bra datlevel branch always L3ED4 rts @@ -570,8 +569,22 @@ saplevel sta bloknml read in next lower index block. lda (zpt),y (high address) sta bloknml+1 dec zpt+1 - jsr rfcbidx read in sapling level - bcs L3ED4 + +* jsr rfcbidx read in sapling level + + lda #$01 prepare to read index block : read command + sta A4L + + ldx #zpt address of current index buffer. + + jsr fileio1 go read index block. + bcs L3ED4 error + + ldy fcbptr + lda bloknml + sta FCBs+FCB.IBLK,y save block address of this index in fcb + lda bloknml+1 + sta FCBs+FCB.IBLK+1,y datlevel lda tposhi get block address of data block lsr @@ -589,32 +602,16 @@ datlevel lda tposhi get block address of data block lda #$01 show data block as never been allocated dec zpt+1 -L3F18 ldy fcbptr set status to show what's missing - ora FCBs+FCB.F,y - sta FCBs+FCB.F,y +L3F18 jsr XDOS.SetFCBStatus set status to show what's missing + lsr discard bit that says data block lsr unallocated because carry indicates if - jsr zipdata index block is invalid and needs to be - bcc svmark zeroed. branch if it doesn't need zeroed + jsr zipdata index block is invalid and needs to be zeroed. + bcc svmark branch if it doesn't need zeroed jsr zeroindex zero index block in user's i/o buffer bra svmark *-------------------------------------- -zeroindex lda #$00 - tay -L3F30 sta (zpt),y zero out the index half of the user's - iny i/o buffer - bne L3F30 - - inc zpt+1 - -L3F37 sta (zpt),y - iny - bne L3F37 - - dec zpt+1 restore proper address - rts -*-------------------------------------- zipdata lda #$00 tay L3F42 sta (datptr),y zero out data area @@ -644,6 +641,7 @@ svmark ldy fcbptr update position in fcb iny iny ldx #$02 + L3F68 lda FCBs+FCB.MARK,y save old mark in case calling routine sta oldmark,x fails later. lda tposll,x @@ -670,8 +668,13 @@ dirmark cmp #$0D is it a directory ? L3F9C lda scrtch recover results of previous subtraction. lsr use difference as counter for how many sta cntent blocks must be read to get to new pos'n. + lda FCBs+FCB.MARK+1,y test for positive direction cmp tposlh indicated by carry. + + lda FCBs+FCB.MARK+2,y + sbc tposhi + bcc L3FB9 if set, position forward. otherwise, L3FAB ldy #$00 read directory file in reverse order. @@ -691,7 +694,7 @@ L3FB9 ldy #$02 position is forward from current. bne L3FB9 loop if position not found in this block beq svmark branch always. - +*-------------------------------------- dirpos1 lda (datptr),y get link address of previous or next sta bloknml directory block. cmp #$01 test for null byte into carry @@ -726,23 +729,23 @@ XDOS.ReadFCB.DBLK L3FF2 rts *-------------------------------------- -rfcbidx lda #$01 prepare to read index block : read command - sta A4L +*rfcbidx lda #$01 prepare to read index block : read command +* sta A4L - ldx #zpt address of current index buffer. +* ldx #zpt address of current index buffer. - jsr fileio1 go read index block. - bcs L400C error +* jsr fileio1 go read index block. +* bcs L400C error - ldy fcbptr - lda bloknml - sta FCBs+FCB.IBLK,y save block address of this index in fcb - lda bloknml+1 - sta FCBs+FCB.IBLK+1,y +* ldy fcbptr +* lda bloknml +* sta FCBs+FCB.IBLK,y save block address of this index in fcb +* lda bloknml+1 +* sta FCBs+FCB.IBLK+1,y -* clc +** clc -L400C rts +*L400C rts *-------------------------------------- wfcbfst jsr upbmap update the bitmap and write file's 1st block. @@ -752,33 +755,35 @@ wfcbfst jsr upbmap update the bitmap and write file's 1st block. rfcbfst lda #$01 read command. pha save the command - lda #$0C + lda #FCB.1stBLK ora fcbptr add offset to fcbptr tay pla - ldx #$48 rd block into index portion of file buf + ldx #zpt rd block into index portion of file buf +*-------------------------------------- dofileio sta A4L command + lda FCBs,y get disk block address from fcb. sta bloknml block 0 not legal - cmp FCBs+FCB.DEVID,y - bne L4031 - cmp #$00 are both bytes 0 ? - bne L4031 no, continue request + bne .1 + + lda FCBs+1,y high address of disk block + bne .2 - lda #$0C otherwise, allocation error. - jsr sysdeath doesn't return... - -L4031 lda FCBs+FCB.DEVID,y high address of disk block - sta bloknml+1 + lda #$0C Block = $0000, allocation error. + jsr GP.SysDeath doesn't return... +.1 lda FCBs+1,y +.2 sta bloknml+1 +*-------------------------------------- fileio1 lda $00,x get memory address of buffer from sta buf page zero pointed to by x register lda $01,x sta buf+1 and pass address to device handler - ldy fcbptr - lda FCBs+FCB.DEVID,y - sta devnum along with device #. + + jsr XDOS.FCBDevIDSelect + lda #$FF also, set to indicate reg call made to sta ioaccess device handler. lda devnum transfer device # for dispatcher @@ -787,18 +792,20 @@ fileio1 lda $00,x get memory address of buffer from jmp XDOS.DevCall call the driver. *-------------------------------------- wfcbdat ldx #datptr point at memory address with x and - lda #$10 disk address with y. + lda #FCB.DBLK disk address with y. ora fcbptr add offset to fcbptr tay and put in y. lda #$02 write data block. jsr dofileio bcs L4096 if errors. + lda #$BF mark data status as current. - bra L408D + bra XDOS.ResetFCBStatus wfcbidx jsr upbmap update bitmap. - ldx #$48 point to address of index buffer - lda #$0E and block address of that index block. + + ldx #zpt point to address of index buffer + lda #FCB.IBLK and block address of that index block. ora fcbptr tay lda #$02 @@ -806,10 +813,12 @@ wfcbidx jsr upbmap update bitmap. bcs L4096 if errors. lda #$7F mark index status as current. +*-------------------------------------- +XDOS.ResetFCBStatus + ldx fcbptr + and FCBs+FCB.F,x + sta FCBs+FCB.F,x -L408D ldy fcbptr change status byte to reflect - and FCBs+FCB.F,y successful disk file update. - sta FCBs+FCB.F,y (carry is unaffected) L4096 rts *-------------------------------------- XDOS.Open jsr XDOS.FindFileOrVol look up the file. @@ -933,16 +942,17 @@ L4163 ldx vcbptr index to vcb. inc VCBs+VCB.OFCNT,x add 1 to # of files currently open ldx fcbptr index to fcb. - lda FCBs,x return ref # to user. + lda FCBs+FCB.ID,x return ref # to user. ldy #$05 sta (A3L),y * clc open is successful rts *-------------------------------------- -tstopen lda #$00 - sta cntent returns the ref # of a free fcb. - sta totent flag to indicate file already open. - sta fcbflg flag indicates a free fcb is available. +tstopen stz cntent returns the ref # of a free fcb. + stz totent flag to indicate file already open. + stz fcbflg flag indicates a free fcb is available. + + lda #$00 L4188 tay index to next fcb. ldx fcbflg test for free fcb found. diff --git a/ProDOS.FX/ProDOS.S.XDOS.D.txt b/ProDOS.FX/ProDOS.S.XDOS.D.txt index 47faa420..58865064 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.D.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.D.txt @@ -56,7 +56,7 @@ L421F jsr rdposn set up data pointer. beq L421F sta cmdtemp save bulk block count. - jsr XDOS.GetFCBStatus make sure current data area doesn't + jsr XDOS.GetFCBStatus make sure current data area doesn't and #$40 need writing before resetting ptr to bne L421F read into user's area. branch if data @@ -133,7 +133,7 @@ errfix1 pha save error code pla sec error rts - +*-------------------------------------- rwdone ldy #$06 return total # of bytes actually read sec derived from cbytes-rwreq. lda cbytes @@ -144,7 +144,7 @@ rwdone ldy #$06 return total # of bytes actually read sbc rwreqh sta (A3L),y jmp rdposn leave with valid position in fcb. - +*-------------------------------------- preprw ldy fcbptr adj pointer to user's buffer to make sec the transfer lda usrbuf @@ -166,7 +166,7 @@ L42F9 ldy tposll index to 1st data. sta sos beginning of page. ldx rwreql get low order count of requested bytes. rts return statuses. - +*-------------------------------------- readpart txa x = low count of bytes to move. bne L430F branch if request is not an even page. @@ -174,7 +174,9 @@ readpart txa x = low count of bytes to move. beq L435D branch if nothing to do. dec rwreqh + L430F dex + L4310 lda (sos),y move data to user's buffer sta (usrbuf),y bcs tstnewl test for newline 1st ! @@ -246,7 +248,7 @@ L4366 stx rwreql and remainder of request count. L4374 plp restore return statuses. setvflg rts this byte ($60) is used to set v flag. - +*-------------------------------------- fxdatptr lda datptr put current user buffer address back to normal sta usrbuf lda datptr+1 @@ -277,7 +279,6 @@ XDOS.ReadDir jsr rdposn L43A6 lda FCBs+FCB.DBLK,x sta (datptr),y - stz FCBs+FCB.DBLK,x mark current block as impossible inx iny inc indexes to do both hi and low bytes @@ -288,7 +289,7 @@ L43B6 clc no error L43B7 rts L43B8 jmp errfix1 report how much xfer'd before error. - +*-------------------------------------- mvcbytes ldy #$04 move request count to a more accessable location lda (A3L),y sta cbytes @@ -301,7 +302,7 @@ mvcbytes ldy #$04 move request count to a more accessable location lda FCBs+FCB.ACCESS,y a = attributes clc and carry clear... rts - +*-------------------------------------- mvdbufr ldy #$02 move the pointer to user's buffer lda (A3L),y to the block file manager sta usrbuf z-page area @@ -312,14 +313,14 @@ mvdbufr ldy #$02 move the pointer to user's buffer gfcbstyp ldy fcbptr return storage type lda FCBs+FCB.STYPE,y rts - +*-------------------------------------- * this subroutine adds the requested byte count to mark and returns sum * in scrtch and also returns mark in tpos and oldmark. * * on exit: * y,x,a is unknown * carry set indicates scrtch > eof - +*-------------------------------------- calcmrk ldx #$00 ldy fcbptr clc @@ -346,7 +347,7 @@ eoftest lda scrtch,x new mark in scrtch. bpl eoftest no, test next lowest L4414 rts - +*-------------------------------------- werreof jsr plus2fcb reset eof to pre-error position. L4418 lda oldeof,x place oldeof back into fcb @@ -426,7 +427,7 @@ L4487 iny indexes and data block ? jsr tstfrblk bcs L44A2 pass back any errors. - jsr XDOS.GetFCBStatus now get more specific. + jsr XDOS.GetFCBStatus now get more specific. and #$04 are we lacking a tree top ? beq L44AC no, test for lack of sapling level index @@ -589,9 +590,22 @@ L457A jsr alcwblk get another block address for the sap sta FCBs+FCB.IBLK,y jsr wfcbfst save new top of tree bcs L45B1 +*-------------------------------------- +zeroindex lda #$00 + tay +L3F30 sta (zpt),y zero out the index half of the user's + iny i/o buffer + bne L3F30 - jmp zeroindex zero index block in user's i/o buffer. + inc zpt+1 +L3F37 sta (zpt),y + iny + bne L3F37 + + dec zpt+1 restore proper address + rts +*-------------------------------------- sapdown jsr gfcbstyp find out if dealing with a tree. cmp #$01 if seed then adj to file type is needed. beq swapdown branch if seed @@ -651,8 +665,7 @@ tstwprot jsr XDOS.GetFCBStatus check for 'never been modified' condition and #$F0 bne tstwprot.8 ordinary rts if known write ok. - lda FCBs+FCB.DEVID,x get file's dev #. - sta devnum get current status of block device. + jsr XDOS.FCBDevIDSelect twrprot1 sta unitnum make the device status call diff --git a/ProDOS.FX/ProDOS.S.XDOS.E.txt b/ProDOS.FX/ProDOS.S.XDOS.E.txt index 80bb4e69..4e7f3798 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.E.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.E.txt @@ -44,12 +44,10 @@ close2 ldx fcbptr jsr relbuffr bcs L46B6 -* lda #$00 - ldx fcbptr + jsr XDOS.FCBDevIDSelect + stz FCBs,x free fcb too - lda FCBs+FCB.DEVID,x - sta devnum go look for associated vcb jsr XDOS.FindVCBForDevNum get vcb pointer. dec VCBs+VCB.OFCNT,x indicate one less file open. @@ -102,7 +100,7 @@ L46F1 lda FCBs+FCB.ACCESS,x test to see if file is modified. lda FCBs+FCB.DIRTY,x has eof been modified ? bmi L4704 if yes. - jsr XDOS.GetFCBStatus has data been modified ? + jsr XDOS.GetFCBStatus has data been modified ? and #$70 (was written to while it's been open?) beq L46D9 if not. @@ -113,18 +111,16 @@ L4704 jsr XDOS.GetFCBStatus jsr wfcbdat if so, go write it. bcs L46E6 if error. -L4710 jsr XDOS.GetFCBStatus check to see if the index block (tree +L4710 jsr XDOS.GetFCBStatus check to see if the index block (tree and #$80 files only) needs to be written. beq L471C branch if not. jsr wfcbidx bcs L46E6 return any errors. -L471C ldx fcbptr - - lda FCBs+FCB.DEVID,x - sta devnum A = d_dev - ldy #0 +L471C ldy #0 + + jsr XDOS.FCBDevIDSelect X = FCBPtr L4723 lda FCBs+FCB.DEVID,x note: this code depends on the defined sta d_dev,y order of the file control block and the @@ -223,6 +219,12 @@ glberr ldy #$01 L47C1 pla rts *-------------------------------------- +XDOS.FCBDevIDSelect + ldx fcbptr + lda FCBs+FCB.DEVID,x + sta devnum + rts +*-------------------------------------- XDOS.SetFCBSType lsr lsr diff --git a/ProDOS.FX/ProDOS.S.XDOS.F.txt b/ProDOS.FX/ProDOS.S.XDOS.F.txt index e33b43a0..68e8df54 100644 --- a/ProDOS.FX/ProDOS.S.XDOS.F.txt +++ b/ProDOS.FX/ProDOS.S.XDOS.F.txt @@ -186,7 +186,7 @@ detree lda stortyp which kind of tree ? bcc L4C59 branch if it is. lda #$0C block allocation error. - jsr sysdeath P8 system death vector + jsr GP.SysDeath P8 system death vector * seedling file type - make sure first desirable block is the only * block available in a seedling file. @@ -537,7 +537,7 @@ cmembit txa page address tay return it in y. pla restore bit mask. return bit position rts in a & y, pointer to memtabl in x. - +*-------------------------------------- valdbuf lda usrbuf+1 high address of user's buffer cmp #$02 must be greater than page 2. bcc L4E1E report bad buffer diff --git a/SYS/KERNEL.S.DIRENT.txt b/SYS/KERNEL.S.DIRENT.txt index bfe501da..88a16c2e 100644 --- a/SYS/KERNEL.S.DIRENT.txt +++ b/SYS/KERNEL.S.DIRENT.txt @@ -314,6 +314,7 @@ K.ReadDir.DIR1 lda (ZPPtr2) X = EntryCount In This Block bcc .3 inc K.ReadDir.BufSize+1 + .3 inx bne .7