35 lines
787 B
Plaintext
35 lines
787 B
Plaintext
rem -- Set the logged drive ('A' to 'P')
|
|
procedure setdrive (drive = char)
|
|
var hl, de, bc, a_psw = integer
|
|
rem -- ensure drive letter is upper case
|
|
if drive >= 'a' then drive = drive - 32
|
|
hl = 0
|
|
de = drive - 65
|
|
bc = 0EH rem BDOS set drive function
|
|
a_psw = 0
|
|
rem - call BDOS with drive number in DE
|
|
call (5H,hl,de,bc,a_psw)
|
|
end
|
|
|
|
rem -- Set the CP/M user area (0 to 15)
|
|
procedure setuser (user = integer)
|
|
var hl, bc, a_psw = integer
|
|
hl = 0
|
|
bc = 20H rem BDOS set user function
|
|
a_psw = 0
|
|
rem - call BDOS with user number in DE
|
|
call (5H,hl,user,bc,a_psw)
|
|
end
|
|
|
|
comment
|
|
create empty file "output.txt" in current directory and in
|
|
startup directory (drive A:, user 0)
|
|
end
|
|
|
|
create "OUTPUT.TXT"
|
|
setdrive 'A'
|
|
setuser 0
|
|
create "OUTPUT.TXT"
|
|
|
|
end
|