Mercurial > hg > Members > kono > nitros9-code
changeset 38:04aaf43f05bc
Moved RAMPak driver and descriptor to 3rdparty dir
author | boisy |
---|---|
date | Tue, 16 Apr 2002 04:31:25 +0000 |
parents | 1b329bae6f60 |
children | 80cda5c48ea7 |
files | level2/modules/makefile level2/modules/r0_rampak256.asm level2/modules/r0_rampak512.asm level2/modules/rampak.asm |
diffstat | 4 files changed, 3 insertions(+), 290 deletions(-) [+] |
line wrap: on
line diff
--- a/level2/modules/makefile Mon Apr 15 21:22:16 2002 +0000 +++ b/level2/modules/makefile Tue Apr 16 04:31:25 2002 +0000 @@ -5,12 +5,12 @@ BOOTERS = boot_1773 boot_rom boot_kenton boot_tc3 boot_rampak boot_wd1002 boot_ide KERNELS = os9p1 os9p2 -SYSMODS = rel rominfo rominfo_pak rom_vectors ioman init pakrom +SYSMODS = rel rominfo rom_vectors ioman init pakrom CLOCKS = clock clock2_soft clock2_disto clock2_146818 FMGRS = scf.mn rbf.mn pipeman.mn pipeman_named.mn DRIVERS = cc3disk.dr cc3hdisk.dr cc3io.dr modpak.dr \ vrn.dr piper.dr printer.dr parallel.dr sio.dr ram.dr sspak.dr \ - hdisk.dr sacia.dr dacia.dr rampak.dr + hdisk.dr sacia.dr dacia.dr IOSUBS = windint.io vdgint.io keydrv joydrv_joy \ joydrv_6551L joydrv_6552L joydrv_6551M joydrv_6552M snddrv DESCS = d0_35s.dd d1_35s.dd d2_35s.dd d3_35s.dd \ @@ -21,9 +21,7 @@ m1.dd m2.dd nil.dd p.dd pp.dd pipe.dd t1.dd t2_sacia.dd \ t3_sacia.dd t2_dacia.dd t3_dacia.dd \ h0_10.dd h1_10.dd h0_15.dd h1_15.dd h0_35.dd h1_35.dd \ - ftdd.dd vi.dd ssp.dd h0_hdisk.dd r0_rampak256.dd \ - r1_rampak256.dd r0_rampak512.dd r1_rampak512.dd \ - term_t1.dd + ftdd.dd vi.dd ssp.dd h0_hdisk.dd term_t1.dd WINDESCS = term_vdg.dt term_win40.dt term_win80.dt w.dw w1.dw w2.dw \ w3.dw w4.dw w5.dw w6.dw w7.dw v1.dw v2.dw v3.dw v4.dw v5.dw \ v6.dw v7.dw @@ -79,9 +77,6 @@ rominfo: rominfo.asm $(AS) -aROMPak=0 $(AFLAGS) $< $(ASOUT)$@ -rominfo_pak: rominfo.asm - $(AS) -aROMPak=1 $(AFLAGS) $< $(ASOUT)$@ - clean: $(RM) $(ALLOBJS)
--- a/level2/modules/r0_rampak256.asm Mon Apr 15 21:22:16 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,43 +0,0 @@ - nam R0 - ttl Disto RAM Pak descriptor - -* Disassembled 98/08/24 11:29:00 by Disasm v1.6 (C) 1988 by RML - -MPISlot equ 1 (slot 0-3) - - ifp1 - use defsfile - use rbfdefs - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $02 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb DIR.!ISIZ.!SHARE.!PEXEC.!PWRIT.!PREAD.!EXEC.!UPDAT. mode byte - fcb $07 extended controller address - fdb $FF40 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.RBF device type:0=scf,1=rbf,2=pipe,3=scf - fcb MPISlot drive number - fcb 0 step rate - fcb TYP.NSF drive device type - fcb DNS.MFM media density:0=single,1=double - fdb 16 number of cylinders (tracks) - fcb 1 number of sides - fcb 1 verify disk writes:0=on - fdb 64 # of sectors per track - fdb 64 # of sectors per track (track 0) - fcb 1 sector interleave factor - fcb 1 minimum size of sector allocation - -initsize equ * -name fcs /R0/ -mgrnam fcs /RBF/ -drvnam fcs /RamPak/ - - emod -eom equ * - end
--- a/level2/modules/r0_rampak512.asm Mon Apr 15 21:22:16 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,43 +0,0 @@ - nam R0 - ttl Disto RAM Pak descriptor - -* Disassembled 98/08/24 11:29:00 by Disasm v1.6 (C) 1988 by RML - -MPISlot equ 2 (slot 0-3) - - ifp1 - use defsfile - use rbfdefs - endc - -tylg set Devic+Objct -atrv set ReEnt+rev -rev set $02 - - mod eom,name,tylg,atrv,mgrnam,drvnam - - fcb DIR.!ISIZ.!SHARE.!PEXEC.!PWRIT.!PREAD.!EXEC.!UPDAT. mode byte - fcb $07 extended controller address - fdb $FF40 physical controller address - fcb initsize-*-1 initilization table size - fcb DT.RBF device type:0=scf,1=rbf,2=pipe,3=scf - fcb MPISlot drive number - fcb 0 step rate - fcb TYP.NSF drive device type - fcb DNS.MFM media density:0=single,1=double - fdb 32 number of cylinders (tracks) - fcb 1 number of sides - fcb 1 verify disk writes:0=on - fdb 64 # of sectors per track - fdb 64 # of sectors per track (track 0) - fcb 1 sector interleave factor - fcb 1 minimum size of sector allocation - -initsize equ * -name fcs /R0/ -mgrnam fcs /RBF/ -drvnam fcs /RamPak/ - - emod -eom equ * - end
--- a/level2/modules/rampak.asm Mon Apr 15 21:22:16 2002 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,196 +0,0 @@ -******************************************************************** -* RamPak - Disto RAM Pak device driver -* -* $Id$ -* -* Ed. Comments Who YY/MM/DD -* ------------------------------------------------------------------ -* 2 Original Disto version by Brian Lantz BL -* 3 Removed copyright info, removed useless BGP 98/10/20 -* register saves, optimized, changed port -* address in descriptor to hold port address -* of RAM pak instead of MPI. - - nam RamPak - ttl Disto RAM Pak device driver - -* Disassembled 98/04/20 09:57:05 by Disasm v1.5 (C) 1988 by RML - - ifp1 - use defsfile - use rbfdefs - endc - -tylg set Drivr+Objct -atrv set ReEnt+rev -rev set $01 -edition set 3 - - mod eom,name,tylg,atrv,start,size - -* RBF Data Area - rmb 129 - -* Free for driver use -ORGSlot rmb 1 - -size equ . - fcb $FF - -name fcs /RamPak/ - fcb edition -* fcc /(C) 1985 BRIAN A. LANTZ/ -* fcb $0D -* fcc /LICENSED TO DISTO/ - -start lbra Init - lbra Read - lbra Write - lbra GetStat - lbra SetStat - lbra Term - -* Init -* -* Entry: -* Y = address of device descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -Init ldd #($FF*256)+3 - stb V.NDRV,u - leax DRVBEG,u -* For each B, compute total sectors... -Init010 sta V.TRAK,x - pshs b,a - lda IT.CYL+1,y - ldb IT.SCT+1,y - mul - std DD.TOT+1,x - puls b,a - leax DRVMEM,x - decb - bne Init010 - rts - -* Write -* -* Entry: -* B = MSB of the disk's LSN -* X = LSB of the disk's LSN -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -Write pshs cc - bsr SlctSlot - ldy V.PORT,u -WritLoop lda ,x+ - stb ,y - sta 3,y - incb - bne WritLoop - bra RestSlot - -* Read -* -* Entry: -* B = MSB of the disk's LSN -* X = LSB of the disk's LSN -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -Read cmpx #$0000 - beq ReadLSN0 - -ReadSect pshs cc - bsr SlctSlot - ldy V.PORT,u -ReadLoop stb ,y - lda 3,y - sta ,x+ - incb - bne ReadLoop - -* Restore the original MPI slot value we saved off -RestSlot lda >ORGSlot,u - sta >MPI.Slct - puls cc - clrb - rts - -* Read LSN0 into our path descriptor -ReadLSN0 pshs y - bsr ReadSect - puls y - ldx PD.BUF,y - lda <PD.DRV,y - leay DRVBEG,u - ldb #DRVMEM - mul - leay d,y - ldb #DD.SIZ-1 -LSN0Loop lda b,x - sta b,y - decb - bne LSN0Loop - rts - - -* This routine selects the MPI slot -* Exit: X = address of path descriptor buffer -SlctSlot orcc #IntMasks mask interrupts - lda >MPI.Slct get current selected slot - sta >ORGSlot,u save off - lda PD.DRV,y get drive no. - ldb #$11 - mul multiply drive no. times $11 - stb >MPI.Slct set new MPI slot no. - tfr x,d - sta >$FF42 write LSN hi byte to PAK - stb >$FF41 write LSN lo byte to PAK - ldx PD.BUF,y load X with address of path buffer - clrb - rts - -* GetStat -* -* Entry: -* A = function code -* Y = address of path descriptor -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -GetStat comb - ldb #E$UnkSvc - rts - -SetStat -* Term -* -* Entry: -* U = address of device memory area -* -* Exit: -* CC = carry set on error -* B = error code -* -Term clrb - rts - - emod -eom equ * - end