home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Glitch Apple Disk Collection
/
2014.glitch.apple.collection.zip
/
indexed
/
LOC2.DSK
/
MUTIL.txt
< prev
next >
Wrap
Text File
|
2014-09-09
|
7KB
|
246 lines
: KI2 20 VTAB 6 HTAB DSPEX PRINT " ? " KEYIN ;
: INTCL4 DSPEX INVERSE 23 VTAB H12 NCELL
IF NCELL 8 >
IF PRINT " C " NORMAL PRINT " AREA COMPLETE "
ELSE NORMAL PRINT " "
THEN
ELSE INVX
THEN NORMAL ;
: ADDCL GETMI RDMAP2 172 <> NCELL 99 = OR
IF BEEP
ELSE NCELL
IF MINDEX GETMI - ABS 62 <
IF NEWSQ2 INTCL4 UPDATE
ELSE ZR -> DIR GETMI
BEGIN CHKT
IF TEMP1 DRM2 GETABS GETMI - DUP ABS 62 <
IF 110 + GETMI WRMAP2 GETMI TEMP1 - 110 + TEMP1 WRMAP2 15 GETMI WRMAP1
GETMI NEWSQ DSPSQ NCELL INC NCELL INTCL4 UPDATE N1
ELSE DROP INCDIR
THEN
ELSE INCDIR
THEN
UNTIL DROP
THEN
ELSE GETMI -> MINDEX
MINDEX TNUM WRLNK0
15 MINDEX WRMAP1
TNUM MINDEX WRMAP2
N1 -> NCELL
MINDEX DSPST DSPSQ INTCL4 UPDATE
THEN
THEN ;
: CDN NLIN 20 =
IF BEEP
ELSE BLC NLIN INC NLIN CURSR UPDATE THEN ;
: CRT NROW N40 =
IF BEEP
ELSE BLC NROW INC NROW CURSR UPDATE THEN ;
: CLF NROW N1 =
IF BEEP
ELSE BLC NROW DEC NROW CURSR UPDATE THEN ;
: CUP NLIN N1 =
IF BEEP
ELSE BLC NLIN DEC NLIN CURSR UPDATE THEN ;
: CLRCL 172 GETMI WRMAP2 ZR GETMI WRMAP1 NCELL DEC NCELL CURSR GETMI RMVSQ INTCL4 UPDATE ;
: BKUP NCELL
IF NCELL TNUM FNDLNKS ZR OVER WRMAP1 172 OVER WRMAP2 -> TEMP1 NCELL DEC NCELL NCELL DUP
IF TNUM FNDLNKS DUP -> MINDEX TNUM SWAP WRMAP2
ELSE DROP
THEN GETMI TEMP1 = IF CURSR ELSE TEMP1 DSPST DSPSQ THEN TEMP1 RMVSQ INTCL4 UPDATE
ELSE BEEP
THEN ;
: RMVCL GETMI RDMAP2 172 <>
IF GETMI TRACE TNUM <> NCELL NOT OR
IF BEEP
ELSE GETMI MINDEX =
IF BKUP
ELSE N1 TNUM FNDLNKS DUP -> T1 GETMI =
IF N2 TNUM FNDLNKS TNUM WRLNK0 CLRCL
ELSE T1 BEGIN DUP -> T1 DRM2 GETABS DUP GETMI =
UNTIL DRM2 GETABS DUP -> TEMP1 T1 - DUP ABS 62 <
IF 110 + T1 WRMAP2 CLRCL
ELSE DROP BEEP
THEN
THEN
THEN
THEN
ELSE BEEP
THEN ;
: ARCMPLT NCELL 8 >
IF BLC TNUM NT >
IF TNUM 24573 POKE
THEN ZR -> TCFL N1
ELSE BEEP
THEN ;
VARIABLE LASTCELL
: COUNTC N1 -> NCELL
TNUM RDLNK0
BEGIN
LNKCHK
WHILE NCELL INC NCELL GETABS
REPEAT DROP -> LASTCELL ;
: SAX N1 DUP -> COM ;
: SEL? DROP GETMI DRM2 172 <
IF TRACE -> TNUM N1 DUP
ELSE BEEP DROP0
THEN ;
: SACOMS 0 , 201 , 202 , 203 , 205 , 141 , 216 , ;
: NOP ;
: SELAR SETWIN HOME N1 -> UPDSBLE
CR PRINT " MOVE CURSOR TO THE AREA YOU WANT "
CR PRINT " TO EDIT OR DELETE (USE I-J-K-M KEYS) "
CR 7 HTAB PRINT " - THEN PUSH <RET> ( "
INVERSE PRINT " X " NORMAL PRINT " TO EXIT) "
10 -> NLIN 20 -> NROW CURSR
BEGIN KI2 -> COM ZR -> TCXQ 7 N1
DO I ' SACOMS + PEEK COM =
IF I -> TCXQ
THEN
LOOP ZR TCXQ
CASE: NOP CUP CLF CRT CDN SEL? SAX THEN
UNTIL ZR -> UPDSBLE BLC DSPEX ;
: DELAR NT
IF SELAR
IF DELT TNUM NT <
IF NT TNUM
DO I ADD1 RDLNK0 DUP I WRLNK0
BEGIN LNKCHK
WHILE GETABS
REPEAT DROP I SWAP WRMAP2
LOOP
THEN NT SUB1 STORNT
THEN
ELSE BEEP
THEN N1 ;
: EDIAR NT
IF SELAR
IF COUNTC N1 -> TCFL LASTCELL -> MINDEX
THEN
ELSE BEEP
THEN N1 ;
: WKTOMP NT 19 > IF ZR 3715 POKE SETMP PROCWA N1 -> MAPIN? N1 ELSE BEEP THEN ;
: NEWAR NT 48 = IF BEEP ELSE NT ADD1 -> TNUM ZR -> NCELL 10 -> NLIN 20 -> NROW CURSR N1 -> TCFL N1 THEN ;
: NEWWK CLRMAPS CLRARYS N16 ZR DO ' GRID I + PEEK XFER LOOP BWIN
801 N1 DO I DSPSQ LOOP
ZR 24573 POKE N1 -> WKAR ZR -> MAPIN? N1 ;
: INTCXEQ ZR -> TCXQ
9 N1 DO
I ' TCCOMS + PEEK COM =
IF I -> TCXQ THEN
LOOP
TCXQ CASE: TCX? CUP CLF CRT CDN ADDCL RMVCL BKUP ARCMPLT THEN ;
: WAWKXEQ COM 206 = IF NEWAR THEN
COM 205 = IF WKTOMP THEN
COM 197 = IF EDIAR THEN
COM 196 = IF DELAR THEN
XCHK IF SVWK N1 THEN ;
: WAMPXEQ COM 212 = IF MPTOWK THEN
COM 195 = IF CXCHK THEN
XCHK IF SVMP N1 THEN ;
: OWAXEQ COM 177 = IF HOME NEWWK THEN
COM 178 = IF HOME SETWIN LDMP THEN
COM 179 = IF HOME SETWIN LDWK THEN
COM 180 = IF BWIN DSPEX CAT N1 THEN
COM 181 = IF N1 N1 THEN ;
: XEQ ZR WKAR
IF TCFL
IF INTCXEQ
ELSE MAPIN?
IF WAMPXEQ
ELSE WAWKXEQ
THEN
THEN
ELSE OWAXEQ
THEN ;
: INTCDSP SETWIN HOME INVERSE
3 HTAB PRINT " I "
H12 PRINT " A " NORMAL PRINT " DD CELL " H31 PRINT " AREA : " TNUM P2 CR
H2 INVERSE PRINT " J " 4 HTAB PRINT " K "
H12 PRINT " R " NORMAL PRINT " EMOVE CELL " H31 PRINT " CELLS: " CR
3 HTAB INVERSE PRINT " M "
H12 PRINT " <- " NORMAL PRINT " BACKUP 1 CELL " H31 INVERSE PRINT " LINE " NORMAL CR
PRINT " MOVE " H31 INVERSE PRINT " ROW " NORMAL ;
: CR11HT CR 11 HTAB ;
: OWADSP BWIN DSPEX HOME N4 VTAB 15 HTAB PRINT " MAP MAKER " CR CR
CR11HT PRINT " 1) NEW WORK "
CR11HT PRINT " 2) LOAD MAP "
CR11HT PRINT " 3) LOAD WORK "
CR11HT PRINT " 4) CATALOG DISK "
CR11HT PRINT " 5) EXIT MAP MAKER " ;
: WAMPDSP SETWIN HOME
10 HTAB INVERSE PRINT " T " NORMAL PRINT " RANSFER MAP -> WORK " CR
10 HTAB INVERSE PRINT " C " NORMAL PRINT " HECK MAP COMPLEXITY " CR
CR H2 INVX PRINT " WORK AREA (SAVE MAP) " ;
: WAWKDSP SETWIN HOME
15 HTAB INVERSE PRINT " N " NORMAL PRINT " EW AREA " INVERSE PRINT " M " NORMAL PRINT " AKE MAP " CR
H2 INVX PRINT " WORK "
INVERSE PRINT " E " NORMAL PRINT " DIT AREA " CR
PRINT " AREA " 15 HTAB INVERSE PRINT " D "
NORMAL PRINT " ELETE AREA " H31 INVERSE PRINT " WORK HAS " NORMAL CR
PRINT " (SAVE WORK) " H31 INVERSE NT P2 PRINT " AREAS " NORMAL ;
: DSPMENU WKAR
IF TCFL
IF INTCDSP INTCL4 UPDATE
ELSE MAPIN?
IF WAMPDSP
ELSE WAWKDSP
THEN
THEN
ELSE OWADSP
THEN ;
: KI3 14 VTAB 13 HTAB CLEOP PRINT " SELECT OPTION: " KEYIN ;
: MUTIL 24575 PEEK NOT
IF ZR -> WKAR ZR -> TCFL HOME ZR -> UPDSBLE ZR -> DR1FLG ZR 22053 POKE ( CITFLAG
ZR 24554 POKE ( CT?
ZR 23 POKE ( COLR
ZR 24561 POKE ( PLYR 1 COLR
ELSE NT IF REF THEN
THEN
BEGIN DSPMENU
BEGIN WKAR IF KI2 ELSE KI3 THEN -> COM
XEQ
UNTIL
UNTIL CLRSTK BWIN DSPEX HOME
BEGIN N1 9 INSERTMS HOME SIDE N1 = UNTIL
READ " RETURN " ;
CLOSE RUN
ETWIN HOME
10 HTAB INVERSE PRINT " T " NORMAL PRINT " RANSFER MAP -> WORK " CR
10 HTAB INVERSE PRINT " C " NORMAL PRINT " HECK MAP COMPLEXITY " CR
CR H2 INVX PRINT " WORK AREA (SAVE MAP) " ;
: WAWKDSP SETWIN HOME
15 HTAB INVERSE PRINT " N " NORMAL PRINT " EW AREA " INVERSE PRINT " M " NORMAL PRINT " AKE MAP " CR
H2 INVX PRINT " WORK "
INVERSE PRINT " E " NORMAL PRINT " DIT AREA " CR
PRINT " AREA " 15 HTAB INVERSE PRINT " D "
NORMAL PRINT " ELETE AREA " H31 INVERSE PRINT " WORK HAS " NORMAL CR
PRINT " (SAVE WORK) " H31 INVERSE NT P2 PRINT " AREAS " NORMAL ;
: DSPMENU WKAR
IF TCFL
IF INTCDSP INTCL4 UPDATE
ELSE MAPIN?
IF WAMPDSP
ELSE WAWKDSP
THEN
THEN
ELSE OWADSP
THEN ;
: MUTIL ZR -> WKAR ZR -> TCFL HOME ZR -> UPDSBLE
BEGIN DSPMENU
BEGIN KI2 -> COM
XEQ
UNTIL
UNTIL CLRSTK
READ " DUM " ;
CLOSE RUN