home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
genie-commodore-file-library
/
CMDGeneral
/
DESOTO14.1.SDA
/
EXIT.PRIME
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2019-04-13
|
3KB
|
107 lines
85 REM EXIT.PRM V1.3
90 POKE53280,11:POKE53281, 0:POKE646,15:REM COLORS:BORDER,BACKGROUND,CHARACTER
95 GOTO115
96 :
100 :DEFINE TARGET CONFIGURATION
110 :SLOT# DEV # DEV TYPE
111 :
115 :T(1)= 10: TT(1)= 4
120 :T(2)= 11: TT(2)= 4
125 :T(3)= 08: TT(3)= 8
130 :T(4)= 09: TT(4)= 9
135 :T(5)= 12: TT(5)= 10
140 :T(6)= 13: TT(6)= 4
141 :
145 A$="EXITNODE*":REM TARGET PROGRAM
150 TD= 0:REM TARGET DEVICE # =TD. :TD=0 SEARCHES ALL DRIVES
151 PN=0:REM PARTITION # ON HD (MUST SET TD IN LINE 150)
152 JD=1:SR=0:REM JIFFY DOS?: SELF-RUN?
153 SP= 0:REM SYSTEM PARTITION ON HD
165 REM LIST 175- FOR MORE OPTIONS REM(null)
170 GOTO210
175 PA$=":PART NAME":REM OR HD DIR PATH
180 :
185 REM PRINT#15,"CD"+PA$:REM HD DIR
190 REM PRINT#15,"/"+PA$:FORT=1TO700:NEXT:REM 81 PART
191 :
195 REM(null)
200 RETURN
205 :
210 GOSUB525
215 RD=23:REM DEVICE# TO BEGIN TEMPORARY CONFIGURATION
220 FORT=1TO9:TF(T)=1:NEXT
225 :
230 X=1:PRINT"[147]POLLING"
235 FORT=8TO29:IFT=14THEN275
240 :OPEN5,T,5:CLOSE5:IFST<>0THEN275
245 :OPEN15,T,15:Z$=""
250 :PRINT#15,"M-R"CHR$(160)CHR$(254)CHR$(6):FORI=1TO6:GET#15,B$:Z$=Z$+B$:NEXT
251 :IFZ$="CMD RL"THENDT(X)=10:GOTO265
252 :IFZ$="CMD HD"THENDT(X)=9:GOTO265
255 :CM=1:PRINT#15,"/0:DUMMY":GOSUB500: IF CM=1 THEN DT(X)=8: GOTO265
260 :DT(X)=4:GOSUB600
265 :CLOSE15
270 :D(X)=T:X=X+1
275 :NEXT:Z=X-1
280 :
285 PRINT"BUFFERING"
290 FORX=1TOZ
295 :OD=D(X):ND=(RD-1)+X:GOSUB475
300 :D(X)=ND:NEXT
305 :
310 PRINT"CONFIGURING"
315 FORX=1TOZ
320 :IF DT(X)=TT(1)ANDTF(1) THEN OD=D(X):ND=T(1):GOSUB475:TF(1)=0:GOTO340
325 :IF DT(X)=TT(2)ANDTF(2) THEN OD=D(X):ND=T(2):GOSUB475:TF(2)=0:GOTO340
330 :IF DT(X)=TT(3)ANDTF(3) THEN OD=D(X):ND=T(3):GOSUB475:TF(3)=0:GOTO340
335 :IF DT(X)=TT(4)ANDTF(4) THEN OD=D(X):ND=T(4):GOSUB475:TF(4)=0:GOTO340
336 :IF DT(X)=TT(5)ANDTF(5) THEN OD=D(X):ND=T(5):GOSUB475:TF(5)=0:GOTO340
337 :IF DT(X)=TT(6)ANDTF(6) THEN OD=D(X):ND=T(6):GOSUB475:TF(6)=0:GOTO340
340 :D(X)=ND:NEXT
345 :
350 IFTD=0THEN380
353 OPEN15,TD,15
355 PRINT#15,"C[208]"+CHR$(PN):GOSUB500
360 PRINT#15,"CD/":GOSUB500:IFEN>19THENPRINT#15,"/":GOSUB500
365 GOSUB175:CLOSE15:GOTO445
370 :
375 REM FIND PROGRAM DISK
380 IFA$="PROGRAM.NAME...."THENNEW
382 F=0:FORT=1TOZ
385 :OPEN15,D(T),15:OPEN5,D(T),5,A$+",P,R":GOSUB500:CLOSE5:CLOSE15
390 :IFAB THEN EN=0:GOTO400
395 :IFEN=0THENTD=D(T):IFDT(T)<>9THENSP=0
400 :IFEN=0THENT=Z:F=1
405 :NEXT
410 IF F=1THEN445
415 PRINT"[147]INSERT DISK CONTAINING":PRINT""A$:PRINT"PRESS A KEY (_TO EXIT)"
420 GETIN$:IFIN$=""THEN420
425 IFIN$="_"THENCLR:END:*************
430 GOTO375
435 :
440 REM LOAD TARGET
445 GOSUB610
447 PRINT"[147]LOAD"CHR$(34)A$CHR$(34)","TD",1:"
450 PRINT:PRINT:PRINT:PRINT:PRINT"RUN"
452 IFJDTHEN @#TD
453 Z8=3:IFSRTHENZ8=2
455 POKE631,19:POKE632,13:POKE633,13:POKE198,Z8:NEW
460 :
470 REM CHANGE DEV #
475 OPEN15,OD,15:PRINT#15,"M-W"CHR$(119)CHR$(0)CHR$(2)CHR$(ND+32)CHR$(ND+64)
480 CLOSE15:RETURN
485 :
495 REM ERROR CHANNEL
500 INPUT#15,EN$,EM$,ET$,ES$:EN=VAL(LEFT$(EN$,2))
505 IF EN<22 OR EN=62 OR EN=74 THEN RETURN
510 IF EN=31OREN=30THEN CM=0:RETURN
515 PRINT"ERROR "EN:PRINTEM$:PRINT"TRACK "ET;:PRINT" SECTOR "ES
520 CLOSE5:CLOSE15:STOP
525 FORT=49152TO49172:POKET,0:NEXT:RETURN
600 PRINT#15,"M-W";CHR$(106)CHR$(0)CHR$(1)CHR$(133)
605 RETURN
607 :
610 OPEN15,TD,15:SG$=STR$(SP)+":SYSTEMINFO.PRM"
620 PRINT#15,"S"+SG$
640 RETURN