# HG changeset patch # User boisy # Date 1026423295 0 # Node ID 1cd7548b534f22b66f547e17a8d643997fa4b9cd # Parent e2a68a0ff6f5d99dc20c513e2dc60ccb034de9cf Moved dragon64 specific commands to have _d64 as part of name, CoCo commands are just command name diff -r e2a68a0ff6f5 -r 1cd7548b534f level1/cmds/cobbler.asm --- a/level1/cmds/cobbler.asm Thu Jul 11 21:28:09 2002 +0000 +++ b/level1/cmds/cobbler.asm Thu Jul 11 21:34:55 2002 +0000 @@ -5,12 +5,12 @@ * * Ed. Comments Who YY/MM/DD * ------------------------------------------------------------------ -* 5 Original Dragon Data distribution version +* 5 Original Tandy distribution version nam Cobbler ttl Make a bootstrap file -* Disassembled 02/04/03 23:11:02 by Disasm v1.6 (C) 1988 by RML +* Disassembled 02/07/06 23:26:00 by Disasm v1.6 (C) 1988 by RML ifp1 use defsfile @@ -24,41 +24,45 @@ BTLSN rmb 1 u0005 rmb 2 BtSiz rmb 2 -sttbuf rmb 20 -u001D rmb 2 -u001F rmb 10 -u0029 rmb 2 +u0009 rmb 7 +sttbuf rmb 3 +u0013 rmb 17 +u0024 rmb 2 +u0026 rmb 10 +u0030 rmb 2 devnam rmb 32 -u004B rmb 16 -u005B rmb 1 -u005C rmb 7 -u0063 rmb 682 +u0052 rmb 16 +u0062 rmb 1 +u0063 rmb 7 +u006A rmb 432 size equ . name equ * fcs /Cobbler/ fcb $05 -L0015 fcb C$LF - fcc "Use: Cobbler " - fcb C$LF - fcc " to create a new system disk" - fcb C$CR -L004E fcb C$LF +L0015 fcb C$LF + fcc "Use: COBBLER " + fcb C$LF + fcc " to create a new system disk" + fcb C$CR +L004F fcb C$LF fcc "Error writing kernel track" - fcb C$CR -L006A fcb C$LF - fcc "Warning - Kernel track has" - fcb C$LF - fcc "not been allocated properly." - fcb C$LF - fcc "Track not written." - fcb C$CR -L00B6 fcb C$LF + fcb C$CR +L006B fcb C$LF + fcc "Error - cannot gen to hard disk" + fcb C$CR +L008C fcb C$LF + fcc "Warning - file(s) present" + fcb C$LF + fcc "on track 34 - this track" + fcb C$LF + fcc "not rewritten." + fcb C$CR +L00CF fcb C$LF fcc "Error - OS9boot file fragmented" - fcb C$LF - fcc " This disk will not bootstrap." - fcb C$CR + fcb C$CR BfNam fcc "OS9Boot " fcb $FF + start equ * clrb lda #'/ @@ -70,11 +74,11 @@ cmpa ,y lbeq Usage leay BfNam,pcr lda #'/ -L0140 sta ,x+ +L013A sta ,x+ lda ,y+ - bpl L0140 + bpl L013A lda L006B,pcr + clrb + lbra wrerr +L015E lda L00B6,pcr +Fragd leax >L00CF,pcr clrb bra wrerr -ETrack leax >L004E,pcr +ETrack leax >L004F,pcr clrb bra wrerr -* -* Write warning -NotAllo leax >L006A,pcr + +L02ED leax >L008C,pcr clrb bra wrerr -* -* Update the identification sector on LSN 0 -* + UpLSN0 pshs u ldx #$0000 ldu #$0015 probably DD.BT diff -r e2a68a0ff6f5 -r 1cd7548b534f level1/cmds/cobbler_d64.asm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/cmds/cobbler_d64.asm Thu Jul 11 21:34:55 2002 +0000 @@ -0,0 +1,224 @@ +******************************************************************** +* Cobbler - Make a bootstrap file +* +* $Id$ +* +* Ed. Comments Who YY/MM/DD +* ------------------------------------------------------------------ +* 5 Original Dragon Data distribution version + + nam Cobbler + ttl Make a bootstrap file + +* Disassembled 02/04/03 23:11:02 by Disasm v1.6 (C) 1988 by RML + + ifp1 + use defsfile + endc +tylg set Prgrm+Objct +atrv set ReEnt+rev +rev set $01 + mod eom,name,tylg,atrv,start,size +u0000 rmb 1 +DevFd rmb 3 +BTLSN rmb 1 +u0005 rmb 2 +BtSiz rmb 2 +sttbuf rmb 20 +u001D rmb 2 +u001F rmb 10 +u0029 rmb 2 +devnam rmb 32 +u004B rmb 16 +u005B rmb 1 +u005C rmb 7 +u0063 rmb 682 +size equ . +name equ * + fcs /Cobbler/ + fcb $05 +L0015 fcb C$LF + fcc "Use: Cobbler " + fcb C$LF + fcc " to create a new system disk" + fcb C$CR +L004E fcb C$LF + fcc "Error writing kernel track" + fcb C$CR +L006A fcb C$LF + fcc "Warning - Kernel track has" + fcb C$LF + fcc "not been allocated properly." + fcb C$LF + fcc "Track not written." + fcb C$CR +L00B6 fcb C$LF + fcc "Error - OS9boot file fragmented" + fcb C$LF + fcc " This disk will not bootstrap." + fcb C$CR +BfNam fcc "OS9Boot " + fcb $FF +start equ * + clrb + lda #'/ + cmpa ,x + lbne Usage + os9 F$PrsNam + lbcs Usage + lda #'/ + cmpa ,y + lbeq Usage + leay BfNam,pcr + lda #'/ +L0140 sta ,x+ + lda ,y+ + bpl L0140 + lda $0068 + subd >$0066 + tfr d,y + std $0066 + lda L0015,pcr +wrerr pshs b + lda #$02 + ldy #$0100 + os9 I$WritLn + comb + puls b +Exit os9 F$Exit + +Fragd leax >L00B6,pcr + clrb + bra wrerr + +ETrack leax >L004E,pcr + clrb + bra wrerr +* +* Write warning +NotAllo leax >L006A,pcr + clrb + bra wrerr +* +* Update the identification sector on LSN 0 +* +UpLSN0 pshs u + ldx #$0000 + ldu #$0015 probably DD.BT + lda " - fcb C$LF - fcc " ..reads (std input) pathnames until eof," - fcb C$LF - fcc " merging paths into new OS9Boot file." - fcb C$CR +L0014 fcb C$LF + fcc "Use (CAUTION): OS9GEN [-s]" + fcb C$LF + fcc " ..reads (std input) pathnames until EOF," + fcb C$LF + fcc " merging paths into New OS9Boot file." + fcb C$LF + fcc " -s = single drive operation" + fcb C$LF + fcb C$CR fcc "Can't find: " -L0094 fcb C$LF +L00B7 fcb C$LF fcc "Error writing kernel track" - fcb C$CR -L00B0 fcb C$LF - fcc "Warning - Kernel track has" - fcb C$LF - fcc "not been allocated properly." - fcb C$LF - fcc "Track not written." - fcb C$CR -L00FC fcb C$LF + fcb C$CR +L00D3 fcb C$LF + fcc "Error - cannot gen to hard disk" + fcb C$CR +L00F4 fcb C$CR +L00F5 fcb $07 +L00F6 fcb C$LF + fcc "Warning - file(s) present" + fcb C$LF + fcc "on track 34 - this track" + fcb C$LF + fcc "not rewritten." + fcb C$CR +L0139 fcb C$LF fcc "Error - OS9boot file fragmented" - fcb C$LF - fcc " This disk will not bootstrap." - fcb C$CR -L013C fcc "RENAME " -L0143 fcc "TempBoot " - fcb $FF -L014D fcc "OS9Boot" fcb C$CR - fcb $FF +L015A fcc "Ready SOURCE, hit C to continue: " +L017B fcc "Ready DESTINATION, hit C to continue: " +L01A1 fcc "RENAME " +L01A8 fcc "TempBoot " + fcb $FF +L01B2 fcc "OS9Boot" + fcb C$CR + fcb $FF + start equ * clrb stb u0200,u + pshs u + tfr y,d + subd ,s++ + subd #$0200 + clrb + std L0143,pcr + lbcs L0503 + leax L00D3,pcr + lbra L0507 +L024D ldx L01A8,pcr lda #$2F -L019B sta ,x+ +L0255 sta ,x+ lda ,y+ - bpl L019B - leay >L014D,pcr -L01A5 lda ,y+ + bpl L0255 + leay >L01B2,pcr +L025F lda ,y+ sta ,x+ - bpl L01A5 + bpl L025F tfr x,d - leax u0200,u + ldy #$0400 os9 I$ReadLn - bcs L022E + bcs L0322 lda ,x ldb #$D3 - cmpa #C$CR - beq L022E + cmpa #$0D + beq L0322 lda #$01 os9 I$Open - bcs L021D + bcs L0310 sta u0200,u + ldy #$0100 os9 I$Read - bcs L0212 + lbcs L0514 +L02DD lda #$00 + lbsr L0517 +L02E2 lda u0200,u + ldy u0200,u ldy #$0100 lda #$02 os9 I$WritLn -L022B lbra L036C -L022E cmpb #$D3 - bne L022B - leax u000F,u +L031F lbra L0514 +L0322 cmpb #$D3 + bne L031F + lda #$01 + lbsr L0517 + leax u0200,u ldy #$0100 os9 I$Read - lbcs L036C - ldd u0218,u + lbne L0577 lda L014D,pcr + beq L03C1 + ldx L01B2,pcr lda #$2F -L02AB sta ,x+ +L03A7 sta ,x+ lda ,y+ - bpl L02AB - leax L0143,pcr + ldx L01A8,pcr lda #$2F -L02BF sta ,x+ +L03BB sta ,x+ lda ,y+ - bpl L02BF -L02C5 lda #$01 + bpl L03BB +L03C1 tst L01A1,pcr + os9 F$Load + lbcs L0514 + tfr u,d + ldu L013C,pcr + leax >L01A1,pcr ldy u0210,u stb u0211,u std u0200,u ldy #$0100 os9 I$Read - bcs L035F - lda ,x - anda #$3F - eora #$3F - lbne L0385 - lda $01,x - eora #$FF - lbne L0385 - lda $02,x - anda #$90 - eora #$90 - lbne L0385 - ldx #$F000 Address of kernel in RAM - ldy #$0F00 Amount to write + lbcs L0507 + leax >u0200,u + lda <$4C,x + bita #$0F + beq L04AE lda u0200,u + ldy #$0064 os9 I$Write - bcs L0354 + bcs L0507 + pshs u + ldx #$0002 + ldu #$6400 + os9 I$Seek + puls u + ldx #$EF00 Address of kernel in RAM + ldy #$0F80 Amount to write + os9 I$Write + bcs L04FC os9 I$Close - bcs L036C + bcs L0503 clrb - bra L036C -L0354 leax >L0094,pcr + bra L0514 +L04FC leax >L00B7,pcr clrb - bra L035F -L035B leax >L0014,pcr -L035F pshs b + bra L0507 +L0503 leax >L0014,pcr +L0507 pshs b lda #$02 ldy #$0100 os9 I$WritLn puls b -L036C os9 F$Exit -L036F leax >L00FC,pcr +L0514 os9 F$Exit +L0517 tst L015A,pcr + ldy #$0021 + bra L0534 +L052C leax >L017B,pcr + ldy #$0026 +L0534 bsr L0560 + leax ,-s + ldy #$0001 + lda #$02 + os9 I$Read + lda ,s+ + eora #$43 + anda #$DF + beq L0559 + leax >L00F5,pcr + ldy #$0001 + bsr L0560 + bsr L0566 + puls a + bne L051D +L0559 bsr L0566 + puls a + puls y,x +L055F rts +L0560 lda #$01 + os9 I$WritLn + rts +L0566 pshs y,x,a + lda #$01 + leax >L00F4,pcr + ldy #$0050 + os9 I$WritLn + puls pc,y,x,a +L0577 leax >L0139,pcr clrb - bra L035F - -SkLSN1 pshs u + bra L0507 +L057E pshs u lda L00B0,pcr +L058D leax >L00F6,pcr clrb - bra L035F + lbra L0507 emod eom equ * diff -r e2a68a0ff6f5 -r 1cd7548b534f level1/cmds/os9gen_d64.asm --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/level1/cmds/os9gen_d64.asm Thu Jul 11 21:34:55 2002 +0000 @@ -0,0 +1,307 @@ +******************************************************************** +* OS9gen - Build and Link a Bootstrap File +* +* $Id$ +* +* Ed. Comments Who YY/MM/DD +* ------------------------------------------------------------------ +* 7 Original Dragon Data distribution version + +* DragonDOS BOOT loads sectors (numbered from 0) 2-17 (3840 bytes) into +* RAM at location 9728. The first two bytes of sector 2 must be ASCII 'OS' +* for this to work. It then jumps to 9730 and begins execution. +* +* The boot code switches into RAM mode, and copies the entire section to +* $F000 and jumps to $F04F. +* The 3840 bytes contain a few bytes to do the RAM mode switch, then +* immediately after comes the kernel modules; OS9, OS9p2, Init and Boot +* The rest of the bootstrap is in the OS9Boot file. The disk head at LSN0 +* contains the LSN of the bootstrap file in field DD.BT. + + nam OS9gen + ttl Build and Link a Bootstrap File + +* Disassembled 02/04/03 23:17:45 by Disasm v1.6 (C) 1988 by RML + + ifp1 + use defsfile + endc +tylg set Prgrm+Objct +atrv set ReEnt+rev +rev set $01 + mod eom,name,tylg,atrv,start,size +u0000 rmb 2 +u0002 rmb 1 +DevFd rmb 1 +u0004 rmb 1 +u0005 rmb 1 +u0006 rmb 2 +u0008 rmb 1 +u0009 rmb 2 +u000B rmb 2 +u000D rmb 2 +u000F rmb 20 +u0023 rmb 2 +u0025 rmb 10 +u002F rmb 2 +u0031 rmb 32 +u0051 rmb 16 +u0061 rmb 1 +u0062 rmb 7 +u0069 rmb 4522 +size equ . +name equ * + fcs /OS9gen/ + fcb $07 +L0014 fcb C$LF + fcc "Use (caution): os9gen " + fcb C$LF + fcc " ..reads (std input) pathnames until eof," + fcb C$LF + fcc " merging paths into new OS9Boot file." + fcb C$CR + fcc "Can't find: " +L0094 fcb C$LF + fcc "Error writing kernel track" + fcb C$CR +L00B0 fcb C$LF + fcc "Warning - Kernel track has" + fcb C$LF + fcc "not been allocated properly." + fcb C$LF + fcc "Track not written." + fcb C$CR +L00FC fcb C$LF + fcc "Error - OS9boot file fragmented" + fcb C$LF + fcc " This disk will not bootstrap." + fcb C$CR +L013C fcc "RENAME " +L0143 fcc "TempBoot " + fcb $FF +L014D fcc "OS9Boot" + fcb C$CR + fcb $FF +start equ * + clrb + stb L0143,pcr + lda #$2F +L019B sta ,x+ + lda ,y+ + bpl L019B + leay >L014D,pcr +L01A5 lda ,y+ + sta ,x+ + bpl L01A5 + tfr x,d + leax L014D,pcr + lda #$2F +L02AB sta ,x+ + lda ,y+ + bpl L02AB + leax L0143,pcr + lda #$2F +L02BF sta ,x+ + lda ,y+ + bpl L02BF +L02C5 lda #$01 + clrb + leax >L013C,pcr + ldy L0094,pcr + clrb + bra L035F +L035B leax >L0014,pcr +L035F pshs b + lda #$02 + ldy #$0100 + os9 I$WritLn + puls b +L036C os9 F$Exit +L036F leax >L00FC,pcr + clrb + bra L035F + +SkLSN1 pshs u + lda L00B0,pcr + clrb + bra L035F + emod +eom equ *