DataMuseum.dk

Presents historical artifacts from the history of:

Ohio Scientific Inc.

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Ohio Scientific Inc.

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download

⟦420eb9248⟧

    Length: 12016 (0x2ef0)
    Notes: OS65UFile, OSU65U-BASIC
    Names: »EDMAFL«

Derivation

└─⟦2f57871a3⟧ Bits:30009355 Ohio Scientific OS-OMS Nucleus, delvist oversat til dansk
    └─⟦this⟧ »EDMAFL« 

BASIC

00001 PRINT"** PROGRAM NOT EXECUTABLE FROM CONSOLE **":RUN"DBMSYS","PASS"
00002 CLOSE:CLEAR:REM 1/79  EDIT MASTER FILE  (EDMAFL)
00010 REM     OS-65U DATA BASE MANAGEMENT SYSTEM
00020 REM       11/78  VER. 1.0 EDIT MASTER FILE
00099 CLOSE
00100 FLAG 1 :REM DISABLE CLOSE ON ERROR FEATURE
00110 FLAG 11:REM ENABLE SPACE SUPPRESSION ON NUM. OUTPUT
00120 FLAG 9 :REM WE CHECK & DECODE DISC ERRORS
00130 NE$="*":NC$="":EE$="/"
00135 SP$="                    ":SP$=SP$+SP$+SP$+SP$
00196 POKE 2888,0
00250 GOSUB 62000:REM CLEAR SCREEN
00260 PRINT"DB-2  -  [NDRE I MASTER FILEN"
00270 PRINT"=============================":PRINT:PRINT:PRINT
00294 REM GET CURRENT DEVICE NUMBER
00295 DV(2)=PEEK(9832):IF DV(2)>127 THEN DV(2)=DV(2)-128+4
00296 DV$(2)=CHR$(DV(2)+65)
00298 REM 
00299 REM     GET DEV/FILENAME/PASSWORD
00300 INPUT"INDTAST STATIONEN HVOR MASTER FILEN LIGGER ";DV$(1)
00301 IF DV$(1)=EE$ GOTO 50080
00305 POKE 2976,44:POKE 2972,58: REM ALLOW , TERMINATION
00310 DV$(1)=LEFT$(DV$(1),1)
00311 IF DV$(1)>="A" AND DV$(1)<="E" GOTO 320
00312 PRINT:PRINT" FORKERT!!!  STATIONER DER ER GYLDIGE:"
00313 PRINT"  A,B,C,D  FLOPPY DISK"
00314 PRINT"  E        HARD DISK":PRINT:GOTO 300
00320 INPUT"INDTAST FILNAVN, KODEORD ";F$(1),PW$
00321 IFLEN(F$(1))<1ORLEN(F$(1))>6THENPRINT"** FORKERT":PRINT:GOTO320    
00322 IF F$(1)="/" OR PW$="/" GOTO 250
00325 IF LEN(F$(1))<5THENFOR I=0TO(4-LEN(F$(1))):F$(1)=F$(1)+" ":NEXT I
00330 F$(1)=LEFT$(F$(1),5) : F$(2)=F$(1)+"0"
00345 IF PW$="." OR PW$="." THEN PW$="ANAN"
00350 IFLEN(PW$)<>4 THEN PRINT:PRINT"*** FORKERT":PRINT:GOTO 320
00362 POKE 2976,13:POKE 2972,13: REM DISABLE ,: TERMINATION
00398 REM
00399 REM     GET MASTER HEADER INFO
00400 DEV DV$(1) : OPEN F$(2),PW$,1
00405 FF$(1)="0":FF$(2)="0":FF$(3)="0":REM KEYFILE LOCATION MEMORY
00410 INPUT%1,T$: IF T$<> F$(1) THEN ERR=1: GOTO 30000
00420 INDEX<1>=6: INPUT%1,TY: IF TY<>10 THEN ERR=2: GOTO 30000
00430 INDEX<1>=9: INPUT%1,EODF
00440 INDEX<1>=20:INPUT%1,BODF
00450 INDEX<1>=31:INPUT%1,RL
00460 INDEX<1>=42:INPUT%1,RN
00470 INDEX<1>=53:N=1: REM  DETERMINE NUMBER OF FIELDS
00480 INPUT%1,T$: INPUT%1,T
00490 IF INDEX(1)<BODF THEN N=N+1: GOTO 480
00500 INDEX<1>=53:DIM FDLB$(N),FL(N),FC$(N),C$(N)
00510 FOR I=1 TO N:INPUT%1,FDLB$(I):INPUT%1,FL(I): FL(I)=FL(I)-1:NEXT I
00520 DIM FP(N+1): FOR X=1 TO N: FP(X+1)=FL(X)+FP(X)+1: NEXT
00524 REM
00525 REM     MAKE CURSOR STRINGS
00526 CB$="-":FOR I=1 TO 4:CB$=CB$+"-------------------------":NEXT
00527 FOR I=1 TO N:C$(I)=LEFT$(CB$,FL(I)):FC$(I)=C$(I):NEXT I
00529 REM
00530 PRINT:PRINT"\NSKES DET AT SPRINGE INSTRUKTIONERNE OVER (J/N) ";
00531 INPUT Y$:IF Y$=EE$ THEN CLOSE1:RUN 2
00532 IF LEFT$(Y$,1)="J" OR LEFT$(Y$,1)="" GOTO 698
00533 GOSUB 62000
00535 PRINT:PRINT:PRINT:PRINT
00548 REM
00549 REM     OUTPUT CONTROL CHARACTER LEGEND
00550 PRINT"  KONTROL KARAKTERER:":PRINT
00551 PRINT"     *         SLETTER AKTUELT FELT INDHOLD"
00552 PRINT"     *R        SLETTER HELE RECORDEN"
00553 PRINT"     /         RETUR TIL TIDLIGERE SP\RGSM]L"
00554 PRINT"     RETURN    JA / FORS[TTELSE"
00560 PRINT:PRINT
00561 FOR I=1 TO 5: PRINT: NEXT I
00562 INPUT"TAST RETURN, HVIS FORS[TTELSE ";J$
00564 GOSUB 62000
00598 REM
00599 REM     OUTPUT SAMPLE RECORD
00605 INPUT"\NSKES DET AT SE EN PR\VE RECORD ";Y$
00606 IF Y$=EE$ THEN PRINT:PRINT:GOTO 530
00607 IF LEFT$(Y$,1)="N" GOTO 700
00608 GOSUB 62000
00640 PRINT"FIL: ";F$(1)
00680 GOSUB 10120: REM GO PRINT SAMPLE RECORD
00685 FOR I=1 TO N:FC$(I)="":NEXT I
00690 RPTR=1
00695 PRINT TAB(40);"FORS[TTELSE ";
00696 INPUT Y$
00697 REM
00698 GOSUB 62000
00699 REM     DETERMINE RECORD NUMBER
00700 PRINT:PRINT"  RECORD UDV[LGELSES M]DER":PRINT
00701 X=RPTR
00711 PRINT" # -- RECORD NR. ( A FOR TILF\JELSE)"
00712 PRINT" L -- FELT/INDHOLD SGNING"
00713 PRINT" N -- N\GLE FIL/INDHOLD S\GNING"
00714 PRINT" S -- S\GNING I MASTER FIL MED EN TEXT"
00715 PRINT" / -- EXIT"
00720 INPUT SM$
00722 IF SM$=NC$ THEN X=1: GOTO 820
00724 IF SM$=NE$ GOTO 790
00726 IF SM$=EE$ GOTO 50080:REM GO COMMON EXIT
00730 IF SM$="#" THEN PRINT"INDTAST RECORD NUMMER ":GOTO 720
00740 IF SM$="L" GOTO 5000: REM GOTO LABEL/CONTENT SEARCH
00750 IF SM$="N" GOTO 6000
00755 IF SM$="A" GOTO 3000: REM GO FIND EODF RECORD+1
00760 IF SM$="S" GOTO 2000
00770 X=ASC(LEFT$(SM$,1))
00780 IF X>47 AND X<58 THEN X=VAL(SM$): GOTO 800
00790 PRINT"*** FORKERT !!!!": GOTO 700
00800 IF X=INT(X) GOTO 807
00802 PRINT"*** INDTAST KUN ET HELT TAL ****":GOTO 700
00807 IF X>0 AND X<=RN GOTO 820
00810 PRINT"*** FORKERT RECORD NR. ***":SM$="*":GOTO 730
00820 RPTR=X: REM COMMON EXIT FROM DETERMINE RECORD
00897 GOSUB 62000
00898 REM
00899 REM     OUTPUT CURRENT RECORD
00900 GOSUB 10200: REM GO GET & PRT CURRENT RECORD
00908 REM
00909 REM     INPUT AND DECODE FIELD NAME/NUMBER
00910 INPUT"INDTAST FELTNAVN ELLER NR. ";W$
00911 IF W$=NC$ THEN W$="1":IF W$=NE$ GOTO 910
00912 IF W$=EE$ AND LEN(W$)=1 THEN CLOSE:OPENF$(2),PW$,1:FPTR=1:GOTO 700
00913 X=ASC(LEFT$(W$,1))
00914 IF X>47 AND X<58 THEN W=VAL(W$):GOTO 930
00916 FOR I=1 TO N:IF FDLB$(I)=W$ THEN W=I:GOTO 930
00918 NEXT I
00920 PRINT"*** FELT ";W$;" ER IKKE FUNDET I FILEN ";F$(1);" ***":GOTO910
00930 IF W>=1 AND W<=N THEN FPTR=W:GOTO 1000
00931 PRINT"*** FELT NUMMER ";W;" ER IKKE FUNDET I FILEN ";F$(1):GOTO 910
00998 REM
00999 REM     EDIT AND SAVE RECORD
01000 INDEX<1>=BODF+((RPTR-1)*RL)+FP(FPTR)
01020 IF INDEX(1)>=EODF THEN FC$(FPTR)="*** TOMT FELT ***"              
01040 PRINT
01050 PRINT"FELT: ";FDLB$(FPTR)
01060 PRINT TAB(5);FC$(FPTR)
01070 PRINT TAB(5);C$(FPTR)
01120 PRINT TAB(3);
01130 INPUT S$
01132 IF S$<>"*R" GOTO 1142
01133 S$="^P"
01134 INDEX<1>=BODF+((RPTR-1)*RL)
01136 IF LEN(S$)=FL(1) GOTO 1140
01138 S$=LEFT$(SP$,FL(1)-LEN(S$))+S$
01140 PRINT%1,S$
01141 CLOSE1:OPENF$(2),PW$,1:FPTR=1:GOTO 698
01142 IF S$=NC$ GOTO 1240
01144 IFS$=EE$ANDLEN(S$)=1THENCLOSE1:OPENF$(2),PW$,1:FPTR=1:GOTO910
01145 IF S$<>NE$ GOTO 1160
01146 S$="0"
01160 IF LEN(S$)<=FL(FPTR) GOTO 1195
01180 PRINT "*** FOR LANG !!!! *** ";LEN(S$)-FL(FPTR);" KARAKTERER ***"
01181 PRINT "    ***** OPDEL FELT INDHOLDET *****"
01190 GOTO 1070
01195 FC$(FPTR)=S$
01196 IF LEN(S$)=FL(FPTR) GOTO 1220
01200 S$=LEFT$(SP$,FL(FPTR)-LEN(S$))+S$
01220 INDEX<1>=BODF+((RPTR-1)*RL)+FP(FPTR):PRINT%1,S$
01225 IF INDEX(1)>EODFTHENEODF=BODF+(RPTR*RL):INDEX<1>=9:PRINT%1,EODF
01240 FPTR=FPTR+1
01260 IF FPTR<=N GOTO 1000
01280 GOSUB 10100
01281 PRINT
01282 INPUT"ER DETTE KORREKT (J/N) ";A$
01283 IF A$=NC$ THEN A$="J"
01284 IF LEFT$(A$,1)="J" THEN GOSUB 62000:GOTO 1290
01286 IF LEFT$(A$,1)="N" GOTO 910
01288 PRINT"*** INDTAST JA (J) ELLER NEJ (N) ***":GOTO1281
01290 RPTR=RPTR+1
01300 IFRPTR<RNTHENCLOSE1:OPENF$(2),PW$,1:FPTR=1:GOSUB10200:GOTO1000
01320 PRINT:PRINT"**  END OF FILE  **"
01360 GOTO 685
01998 REM
01999 REM     SIMPLE SEARCH ROUTINE
02000 GOSUB 62000
02001 PRINT
02002 PRINT"INDTAST S\GE TEXT  (MAX. 32 KARAKTERER) ":PRINT
02003 INPUT ST$:IF ST$=EE$ GOTO 698
02004 IF LEN(ST$)=0 GOTO 2001
02005 GOSUB 60000  :  REM GET FIELDS TO VERIFY ON
02010 INDEX<1>=BODF
02020 FIND ST$,1
02030 IF INDEX(1)>=1E9 THEN MS=1: GOTO 2100
02040 M=INT((INDEX(1)-BODF)/RL)
02045 M=M+1
02050 IF INDEX(1)>EODF THEN MS=2:GOTO 2100
02060 IF M>RN THEN MS=1:GOTO 2100
02070 X=M:GOTO 4000
02100 PRINT:IF MS=1 THEN PRINT ST$;" ER IKKE FUNDET I FILEN":GOTO 700
02110 IF MS=2 THEN PRINT ST$;" ER IKKE FUNDET F\R SLUT P] FILEN"
02115 IF MS=2 GOTO 700
02120 IF MS=3 THEN MS=1: GOTO 2100
02998 REM
02999 REM     FIND RPTR FOR APPENEND MODE
03000 R=INT((EODF-BODF)/RL)
03010 IF R>=RN THEN PRINT:PRINT"*** FILEN ER FULD ****":GOTO 700
03020 X=R+1:GOTO 820 :REM GO GET RECORD
03998 REM
03999 REM     SUB TO CONTINUE SEARCH
04000 RPTR=X:IF DS<N THEN GOSUB 60100:GOTO 4010
04005 GOSUB 10200
04010 INPUT"ER DET DEN RIGTIGE RECORD ";Z$
04015 IF Z$=NC$ OR LEN(Z$)=0 THEN Z$="J"
04020 IF LEFT$(Z$,1)<>"J" GOTO 4030
04022 IF DS<N THEN GOSUB 10000:GOTO 910
04024 GOTO 910
04030 IF LEFT$(Z$,1)<>"N" THEN PRINT"**** INDTAST J ELLER N":GOTO4010   
04040 INDEX<1>=BODF+(RPTR*RL)
04050 GOTO 2020 : REM CONTINUE SEARCH
04998 REM
04999 REM    LABEL/CONTENT SEARCH
05000 GOSUB 62000
05010 PRINT"FELT NAVN":PRINT
05020 FOR I=1 TO (INT(N/2)*2) STEP 2
05021 PRINT I;TAB(4);FDLB$(I);TAB(37);I+1;TAB(41);FDLB$(I+1):NEXT
05030 IF INT(N/2)=N/2 THEN PRINT:GOTO 5040
05032 PRINT N;TAB(4);FDLB$(N):PRINT
05040 POKE 2976,44:POKE 2972,58:G$="":H$=""
05041 PRINT"INDTAST FELTNAVN ELLER ^NR, INDHOLD":PRINT:PRINT TAB(3)
05042 INPUTG$,H$:POKE2976,13:POKE2972,13:IFG$=EE$ORH$=EE$GOTO698
05043 IF LEFT$(G$,1)<>"^" GOTO 5050
05044 V=VAL(MID$(G$,2)):IF V<1 OR V>N GOTO 5032
05045 G$=FDLB$(VAL(MID$(G$,2)))
05050 FOR I=1 TO N:IF G$=FDLB$(I) GOTO 5070
05055 NEXT I
05060 PRINT:PRINT"FELTNAVN ";G$;" EJ FUNDET":PRINT:GOSUB62500:GOTO698
05070 G=I
05080 INDEX<1>=BODF
05090 FIND H$,1
05100 IF INDEX(1)>=1E9 THEN MS=1: GOTO 5200
05110 M=1+INT((INDEX(1)-BODF)/RL)
05120 IF INDEX(1)>EODF THEN MS=2:GOTO 5200
05130 IF M>RN THEN MS=1:GOTO 5200
05140 X=M:GOTO 5300
05160 GOTO 5120
05200 PRINT
05210 IF MS=1 THEN PRINT H$;" EJ FUNDET I FILEN": GOTO 700
05220 IF MS=2 THEN PRINT H$;" EJ FUNDET F\R SLUT P] FILEN"
05230 IF MS=2 GOTO 700
05240 IF MS=3 THEN MS=1:GOTO 5210
05298 REM
05299 REM     CHECK LABEL/CONTENTS
05300 RPTR=X:GOSUB 10000: REM   GO GET RECORD CONTENTS
05310 IF H$=FC$(G) GOTO 5330
05320 GOTO 5400: REM NO MATCH TRRY AGAIN
05330 IF G$<>FDLB$(G) GOTO 5400
05340 GOSUB 10100: REM OUTPUT RECORD
05350 INPUT"ER DET DEN RIGTIGE RECORD ";U$
05355 IF U$="" THEN U$="J"
05360 IF LEFT$(U$,1)="J" GOTO 910
05370 IF LEFT$(U$,1)<>"N" THEN PRINT"*** INDTAST J ELLER N **":GOTO 5350
05400 INDEX<1>=INDEX(1)+LEN(H$)
05410 GOTO 5090
05887 REM
05998 REM    KEYFILE SEARCH
05999 REM
06000 GOSUB 62000:PRINT"FELT NAVN":PRINT
06010 FOR X=1 TO 2*INT(N/2) STEP 2
06020 PRINT X;TAB(4);FDLB$(X);TAB(37);X+1;TAB(41);FDLB$(X+1):NEXT
06030 IF N/2<>INT(N/2) THEN PRINT N;TAB(4);FDLB$(N)
06035 PRINT
06040 PRINT"INDTAST FELTNAVN ELLER ^NR, INDHOLD"
06041 POKE 2976,44:POKE 2972,58
06042 PRINT:PRINT TAB(3);:INPUT A$,B$
06043 POKE 2976,13:POKE 2972,13
06044 IF A$=EE$ OR B$=EE$ GOTO 698
06050 IF A$="" OR B$="" GOTO 6035
06054 IF LEFT$(A$,1)<>"^" GOTO 6058
06055 V=VAL(MID$(A$,2)):IF V<1 OR V>N GOTO 6035
06056 A$=FDLB$(VAL(MID$(A$,2))):GOTO 6065
06058 FORV=1TON:IF FDLB$(V)=A$ GOTO 6065
06060 NEXT
06062 PRINT:PRINT"*** EJ KORREKT FELTNAVN ***":PRINT:PRINT:GOTO 6040
06065 M=1
06070 F$(3)=F$(1)+MID$(STR$(M),2):DB$="A"
06075 IF STR$(V)=FF$(1)THENDEV FF$(2):OPENFF$(3),PW$,8:GOTO 6140
06080 DEV DB$:OPEN F$(3),PW$,8
06085 GOTO 6120
06090 DB$=CHR$(1+ASC(DB$)):IF DB$<"I" GOTO DL
06095 M=M+1:IF M<8 GOTO 6070
06100 PRINT:PRINT:PRINT"N\GLE FIL ";A$;" EJ FUNDET "
06105 DEV DV$(1)
06110 PRINT:GOSUB 62500:GOTO700
06120 INDEX<8>=9: INPUT%8,ZE
06121 INDEX<8>=20:INPUT%8,ZL
06122 INDEX<8>=31:INPUT%8,ZMB
06123 INDEX<8>=42:INPUT%8,P$
06130 IF A$<>P$THENCLOSE8:DL=6080:DEV DV$(2):GOTO6090
06135 FF$(1)=STR$(V):FF$(2)=DB$:FF$(3)=F$(3)
06140 FIND "^"+B$,8: IF INDEX(8)<ZE GOTO 6160
06150 CLOSE8:DEV DV$(1):PRINT:PRINT
06152 PRINT"N\GLE TEXT ";B$;" EJ FUNDET": GOTO 6110
06160 INPUT%8,Z$,PTR
06170 RPTR=1+INT((PTR-BODF)/RL)
06180 GOSUB 10200
06190 PRINT:INPUT"ER DETTE KORREKT ";X$:IF X$="" THEN X$="J"
06192 IF X$="" OR X$="" THEN X$="J"
06200 IF X$="J" THEN CLOSE8:DEV DV$(1): GOTO 910
06202 IF X$="" OR X$="J" THEN CLOSE8:DEV DV$(1): GOTO 910
06210 GOTO 6140
09996 REM
09997 REM     SUBROUTINES
09998 REM
09999 REM     SUB 1  GET CURRENT RECORD CONTENTS
10000 TX=((RPTR-1)*RL)+BODF
10020 FOR I=1 TO N
10030 INDEX<1>=TX+FP(I):INPUT%1,FC$(I)
10080 NEXT I:RETURN
10098 REM
10099 REM     SUB 1.2  PRINT CURRENT RECORD CONTENTS
10100 GOSUB 62000
10110 PRINT"RECORD: ";RPTR
10120 PRINT
10130 PRINT"FELT";TAB(34);"INDHOLD"
10151 XA=1
10160 FOR I=1 TO N
10170 PRINT I;FDLB$(I);TAB(35);FC$(I)
10171 IF I=N GOTO 10179
10172 IF XA<20 THEN XA=XA+1:GOTO 10179
10173 PRINT TAB(45);"FORS[TTELSE ";
10174 INPUT Y$
10175 XA=1
10176 PRINT:PRINT"RECORD: ";RPTR;TAB(20);"FORSAT"
10177 PRINT:PRINT"FELT";TAB(34);"INDHOLD"
10178 REM **
10179 NEXT I
10180 RETURN
10200 TX=((RPTR-1)*RL)+BODF: REM  FETCH AND PRINT
10205 GOSUB 62000
10210 PRINT:PRINT"RECORD: ";RPTR:PRINT:PRINT"FELT";TAB(34);"INDHOLD"
10220 XA=1
10230 FOR I=1 TO N
10240 INDEX<1>=TX+FP(I):INPUT%1,FC$(I)
10250 PRINT I;FDLB$(I);TAB(35);FC$(I)
10260 IF I=N GOTO 10299
10270 IF XA<20 THEN XA=XA+1:GOTO 10299
10280 PRINT TAB(45);"FORS[TTELSE ";
10285 INPUT Y$
10286 XA=1
10288 PRINT:PRINT"RECORD: ";RPTR;TAB(20);"FORSAT"
10290 PRINT:PRINT"FELT";TAB(34);"INDHOLD"
10299 NEXT I:RETURN
30000 IF ERR=1 THEN PRINT"*** FIL NAVN FORKERT ***":GOTO 30100
30010 IF ERR=2 THEN PRINT"*** FIL TYPE FORKERT ***":GOTO 30100
30020 GOTO 50080 
30100 PRINT"** LOCATED FILE MISMATCH BEFORE CONTINUING **":GOTO 50080
50000 DE=PEEK(10226):DL=PEEK(11774)+PEEK(11775)*256
50001 IF DL=6080 GOTO 6090
50010 IF DE<>128 AND DL<>400 GOTO 50030
50020 PRINT:PRINT"*** FIL EJ FUNDET P] STATION ";DV$(1);" ***":PRINT
50021 GOSUB 62500:GOTO 2
50030 IF DE<>132 AND DL<>10032 GOTO 50070
50040 PRINT:PRINT"**  END OF FILE  **":PRINT:GOSUB 62500:GOTO 685
50070 PRINT"*** DISK FEJL ";DE;" LINIE ";DL;" ***"
50075 GOSUB 62500
50080 CLOSE:DEVDV$(2):FLAG12:FLAG2
50085 POKE 2976,44:POKE 2972,58
50090 DEV DV$(2):RUN"DBMSYS","PASS"
50100 PRINT:INPUT"TAST RETURN, HVIS FORS[TTELSE ";QS$
52000 GOTO 50070
60000 PRINT
60010 FOR I=1 TO (INT(N/2)*2) STEP 2
60015 PRINT I;TAB(4);FDLB$(I);TAB(38);I+1;TAB(43);FDLB$(I+1)
60017 NEXT
60019 IF INT(N/2)<>(N/2) THEN PRINT N;TAB(4);FDLB$(N)
60020 PRINT:PRINT N+1;TAB(4);"HELE RECORDEN":PRINT
60030 PRINT"INDTAST FELT NAVN ELLER ^FELT NR."
60031 PRINT"P] FELTET DER SKAL SAMMENLIGNES.":PRINT
60040 INPUT Y$:IF LEFT$(Y$,1)="^"THENY=VAL(MID$(Y$,2)):GOTO 60050
60042 FOR X=1TON:IF FDLB$(X)=Y$ GOTO 60045
60043 NEXT:PRINT:PRINT:PRINT"*** FORKERT FELTNAVN ***":PRINT:PRINT
60044 GOTO 60000
60045 Y=X
60050 IF Y<1 OR Y>N+1 THEN PRINT CHR$(7):GOTO 60030
60052 IF Y=N+1 THEN DS=N:GOTO 60055
60053 DS=Y
60055 GOSUB 62000
60060 RETURN
60100 PRINT:REM   S SEARCH VERIFY FETCH FIELD SUB
60110 INDEX<1>=BODF+((RPTR-1)*RL)+FP(DS)
60112 INPUT%1,KL$
60120 PRINT "RECORD: ";RPTR
60130 PRINT
60140 PRINT FDLB$(DS):PRINT TAB(2);KL$
60150 PRINT:PRINT:RETURN
62000 FOR I=1 TO 35:PRINT:NEXT:RETURN
62500 PRINT:INPUT"TAST RETURN, HVIS FORS[TTELSE";X$:PRINT:RETURN

Full view