home *** CD-ROM | disk | FTP | other *** search
- ;assign.asm
- ;================================================
- ; Command: assign drive-letter [to] unit,drive
- ;================================================
-
- int00 = $1700
- int01 = $1701
- int04 = $1704
- int05 = $1705
- int06 = $1706
- int0e = $170e
- int11 = $1711
- primm = $ff7d
-
- star = $0b00
- .wor star
- * = star
-
- jmp assign
- dw Date
-
- assign ldx #1 ;1st get parameter number one
- jsr int04
- bcs syntax
- jmp a0
-
- syntax jsr primm
- .asc 13,"Syntax: assign letter [to] unit,drive",13
- .asc 13,"Purpose: defines a disk device letter",13,0
- jmp int0e
-
- a0 sta letter
- jsr int05
- bcc syntax
- inx
- jsr int04
- cmp #"t"
- bne a1
- inx
- a1 stx parm
- jsr int11 ;get unit
- cmp #0
- beq a2
- invld jsr primm
- .asc 13,"invalid drive or device?", 0
- jmp int0e
-
- a2 stx unit
- ldx parm
- inx
- jsr int11
- cmp #0
- bne invld
- txa
- cmp #10
- bcs invld
- ora #$30
- tay
- ldx unit
- lda letter
- jsr int06
- bcs invld
- jsr int01
- jsr int00
- jmp int0e
-
- unit *=*+1
- parm *=*+1
- letter *=*+1
-
- .end
-