ZX Profile

Products: ZX Pro/File
Developer(s): Thomas B. Woods
Date: 1982
Type: Cassette
Platform(s): TS 1000

Contents

Related Products

Machine language database with multi-word search, ordered displays, definable printer functions. Flexible file size, instant file access. 59 page manual and updates via newsletter. Available on ROM from ROMPAK. 16-64K.

Gallery

ZX Profile

Source Code

   2 REM \27\9B\27\2A\37\39\9B\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\9B\9B\9B\35\9B\00\2A\D6\40\ED\4B\D8\40\11\82\40\1A\ED\B1\E2\DA\40\13\1A\FE\9B\CA\C1\40\ED\A1\CA\B2\40\C3\A9\40\22\D6\40\2B\7E\FE\17\CA\CE\40\C3\C4\40\22\7B\40\ED\43\D8\40\C9\7C\53\01\00\CD\19\41\01\01\00\C3\CE\40\ED\4B\7B\40\C9\00\ED\4B\0E\40\C9\00\00\ED\5B\7B\40\01\00\00\D5\13\03\1A\FE\17\C2\F8\40\D5\ED\43\7B\40\01\00\00\03\13\1A\FE\86\C2\08\41\E1\D1\ED\B0\ED\4B\7B\40\C9\2A\10\40\01\06\00\ED\4A\C9\2A\0E\40\C5\16\05\C3\7E\08\00\00\00\00\00\ED\4B\7B\40\03\0A\ED\43\7B\40\FE\17\CA\46\41\FE\8C\C8\D7\C3\30\41\0B\0A\FE\17\C2\46\41\ED\43\7B\40\C9\00\00\00\00\00\00\00\00\00\00\00\00\00\00\39\54\ED\5B\60\41\01\00\00\ED\6B\0E\40\E5\03\23\7E\FE\76\C2\6E\41\2B\0B\7E\FE\00\CA\76\41\23\36\8C\E1\03\03\C5\ED\B0\C1\C9\00\00\00\01\00\00\ED\6B\7B\40\11\92\40\23\3E\17\BE\C8\1A\BE\C2\93\41\13\1A\FE\9B\C2\96\41\01\01\00\C9\00\00\00
  13 REM \ED\6B\0C\40\23\11\82\40\ED\4B\2E\40\7E\FE\18\CC\DC\41\ED\A0\EA\C0\41\CD\19\41\22\D6\40\00\00\00\00\00\3E\9B\12\C9\00\00\3E\9B\12\11\91\40\12\13\23\0B\79\D6\0E\3E\9B\32\F3\41\F8\01\0E\00\C9\00
  16 REM \ED\6B\7B\40\3E\17\23\BE\20\FC\2B\01\05\00\3E\00\ED\B9\E5\21\05\00\ED\42\E5\C1\ED\6B\2E\40\ED\5B\12\40\ED\5A\23\23\23\EB\E1\23\ED\B0\C9
  17 CLS 
  18 PRINT "%Z%X% %P%R%O%/%F%I%L%E",,,,"%E%N%T%E%R% %A% %S%E%A%R%C%H% %C%O%M%M%A%N%D","%O%R% %T%Y%P%E% %"%A%"% %T%O% %A%D%D% % % % ","% % % % % %"%S%A%V%E%"% %T%O% %S%A%V%E% % % ","SPACE OPEN: ";LEN D$-P;" SLOTS";AT 10,0;"SEPARATE MULTI-WORD","COMMANDS WITH A ""/""",,,"TYPE ""AUTO"" FOR AUTO-SEARCH"
  19 POKE 16883,0
  20 LET Y=0
  21 PRINT TAB 5;"""DEFP"" FOR PRINT FORMAT";AT 19,0;" PRINT STATUS",,"START/NO./SPACE";TAB 2;C1-2;TAB 6;C2;TAB 12;S
  22 LET C=Y
  23 INPUT X$
  25 IF X$="SAVE" THEN SAVE "Z%X"
  26 IF X$="DEFP" THEN GOTO 2000
  27 LET Z$="00000"
  28 IF X$="AUTO" THEN GOTO 665
  31 CLS 
  32 IF X$="A" THEN GOTO 500
  33 IF Y THEN LET E=L
  34 IF X$="" THEN GOTO 18
  35 IF X$(LEN X$)="/" OR X$="SAVE" OR LEN X$>28 THEN GOTO 18
  36 PRINT X$
  40 LET X$=X$
  45 RAND USR 16820
  75 POKE 16600,P-256*INT (P/256)
  80 POKE 16601,INT (P/256)
 110 CLS 
 115 LET B=USR 16546
 117 IF B>P THEN LET B=USR 16602
 121 IF PEEK 16883 AND B<>1 THEN IF USR 16780=0 THEN GOTO 115
 123 IF B<>1 THEN IF Y THEN GOTO 1000
 124 IF Y AND VAL Z$>E THEN GOTO 1070
 125 PRINT X$;TAB 0;"%F%I%L%E% %S%E%A%R%C%H",,,,TAB 1;"*";
 130 LET X=USR 16688
 132 IF PEEK X=140 THEN PRINT TAB 1;
 140 IF PEEK X<>23 THEN GOTO 130
 160 IF B<>1 AND C=1 THEN GOTO 3000
 220 PRINT AT 16,0;"%H%I%T% %E%N%T%E%R% %T%O% %C%O%N%T%I%N%U%E% %S%E%A%R%C%H%I%N%G% %"%C%"% %T%O% %C%O%P%Y% % % % % % % % % % % % % % % % % % % % % %"%R%"% %T%O% %R%E%T%U%R%N% %T%O% %P%R%E%V%I%O%U%S% %F%I%L%E%S% %"%E%"% %T%O% %E%D%I%T% %T%H%I%S% %F%I%L%E% % % % % % % % % % % %"%N%"% %T%O% %B%E%G%I%N% %A% %N%E%W% %F%I%L%E% %S%E%A%R%C%H% % "
 230 INPUT Y$
 231 IF Y$="C" THEN GOTO 3000
 232 IF Y$="E" AND B<>1 AND B<P-20 THEN GOTO 300
 245 GOTO 220*(Y$<>"N")-110*(Y$="")-190*(Y$="R")
 300 LET P=P-USR 16624
 310 PRINT AT 0,20;"%E%D%I%T%/%F%I%L%E"
 320 GOTO 504
 501 PRINT "%A%D%D%/%F%I%L%E%-%-%E%N%T%E%R% %T%I%T%L%E";AT 3,1;"*"
 504 LET L=6+(PEEK 16400+256*PEEK 16401)
 505 LET Y=3
 506 PRINT AT 16,0;"PRESS ""C"" TO CLOSE THE FILE.    ARROWS MOVE THE "">""             HIT %E%N%T%E%R TO INPUT DATA";Q$;Q$;Q$
 507 IF LEN Y$>=29 THEN PRINT AT 20,0;"%D%A%T%A% %T%O%O% %L%O%N%G%-%-%R%E%/%I%N%P%U%T"
 508 SLOW 
 509 PRINT AT Y,0;">";AT Y,0;" ";
 510 LET Y$=INKEY$
 520 IF Y$="C" THEN GOTO 600
 545 IF (Y$="6" AND Y<14) OR (Y$="7" AND Y>3) THEN LET Y=Y+SGN (6.5-VAL Y$)
 550 IF INKEY$<>CHR$ 118 THEN GOTO 509
 552 PRINT AT 16,0;" INPUT DATA. PRESS JUST %E%N%T%E%R        TO DELETE";Q$;Q$;Q$
 553 PRINT AT Y,0;"%>";
 555 INPUT Y$
 556 IF Y=3 AND Y$="" THEN GOTO 650
 557 IF Y=3 THEN LET Y$="*"+Y$
 560 IF LEN Y$<29 THEN PRINT AT Y,0;Q$;AT Y,1;Y$
 562 LET Y=Y+(Y<14)-(LEN Y$>=29)
 565 GOTO 506
 602 FAST 
 605 FOR Y=3 TO 14
 610 PRINT AT Y,1;
 615 IF PEEK USR 16617=0 THEN GOTO 640
 620 POKE 16736,(L+P)-256*INT ((L+P)/256)
 630 POKE 16737,INT ((L+P)/256)
 635 LET P=P+USR 16738
 640 NEXT Y
 645 LET P=P-1
 650 POKE L+P,23
 655 POKE L+P+1,134
 660 FAST 
 662 GOTO 17
 665 PRINT AT 13,0;"PRINT OUT?";Q$;Q$
 670 INPUT X$
 675 IF X$="Y" THEN LET C=1
 700 PRINT AT 13,0;"%I%N%P%U%T% %C%O%M%M%A%N%D";Q$;Q$;Q$
 701 INPUT X$
 703 PRINT AT 15,0;X$;Q$;AT 16,0;"%S%T%A%R%T% %N%O%.%?";TAB 0;" OR ENTER"
 704 INPUT Z$( TO 5)
 706 IF Z$="     " THEN GOTO 27
 707 GOSUB 1202
 708 LET E=VAL Z$
 709 LET L=E
 710 PRINT AT 17,0;L;Q$;AT 16,18;"%E%N%D% %N%O%.%?"
 717 GOSUB 1200
 725 GOTO 30
1008 LET Y$="     "
1010 LET Y$=Y$
1030 RAND USR 16890
1032 IF CODE Y$<29 THEN LET Y$=Y$(2 TO )
1033 IF CODE Y$<29 THEN GOTO 1032
1040 IF Y$=((STR$ E)+"    ")( TO LEN Y$) THEN GOTO 125
1060 GOTO 115
1070 LET E=E+1
1100 GOTO 36
1200 INPUT Z$( TO 5)
1202 LET Y=1
1205 FOR X=1 TO 5
1210 IF Z$="     " OR CODE Z$(X) AND (CODE Z$(X)<28 OR CODE Z$(X)>37) THEN LET Y=2
1220 NEXT X
1225 IF Y=2 THEN GOTO 1200
1230 RETURN 
2010 PRINT AT 13,0;Q$;Q$;"1ST COPY LINE?"
2020 GOSUB 1200
2025 IF VAL Z$>12 THEN GOTO 2020
2030 LET C1=2+VAL Z$
2035 PRINT AT 15,0;"NO.";TAB 13;"S?"
2045 GOSUB 1200
2047 IF VAL Z$>15-C1 THEN GOTO 2045
2050 LET C2=VAL Z$
2060 PRINT AT 15,0;"% %F%O%R%M% %S%P%A%C%I%N%G%?% "
2070 GOSUB 1200
2090 LET S=VAL Z$
2100 GOTO 17
3000 PRINT AT C1,0;
3010 POKE 16679,C2
3020 RAND USR 16674
3025 LET Y$="C"
3030 IF C AND B>1 THEN LET Y$=""
3035 FOR X=1 TO S
3036 LPRINT 
3037 NEXT X
3040 GOTO 232
Scroll to Top