Listing of file='SAMPLE.BAS;02' on disk='vmedia/chip_53-sector.ccvf'
0 REM KY 0 REM S T A R T O F P R O G R A M 1 GOTO 500 100 REM FIELD HANDLING SUBROUTINE 105 REM X = X CO-ORDINATE 110 REM Y = Y CO-ORDINATE 115 REM ML = MAXIMUM INPUT LENGTH 120 REM NA$= 'N' FOR NUMERIC OR 'A' FOR ALPHANUMERIC 125 REM KB = KEYBOARD CHARACTER 130 REM FI$=FINAL STRING 135 REM SA = SCREEN ADDRESS OF FIELD 140 PO= PEEK (32940)+ PEEK (32941)* 256+ 1:REM POINT TO PARAMETER PASS AREA 145 SA= 28672+ 128* Y+ X+ X:REM SCREEN ADDRESS 150 ZZ= INT (SA/ 256):POKE PO+ 3,SA- 256* ZZ:POKE PO+ 4,ZZ 155 SA= SA- 2 160 POKE PO+ 1,ASC (NA$):REM ALPHANUMERIC OR NUMERIC 165 FI$= "" 170 PLOT 3,X,Y 175 KB= CALL (ML) 180 IF KB= 9OR PEEK (PO)= 0THEN RETURN 185 FOR I= 2TO PEEK (PO)* 2STEP 2 190 FI$= FI$+ CHR$ (PEEK (SA+ I)):NEXT I 195 RETURN 500 REM PROGRAM INITIALIZATION 520 CLEAR 250 530 PLOT 27,4 540 PRINT "RUN FIELDS" 545 REM SET UP SCREEN 550 PLOT 27,27,27,24 560 PLOT 12,3,5,1,14 570 PRINT "SAMPLE PROGRAM TO DEMONSTRATE THE USE OF 'FIELDS'" 580 PLOT 3,0,5,11,3,5,5,15 590 INPUT "ENTER 'I' TO INSERT OR 'U' TO UPDATE ";A$ 600 IF A$< > "I"AND A$< > "U"GOTO 580 610 PRINT "________________________________________________________________" 620 FOR I= 1TO 20:PLOT 10,11:NEXT I 630 PLOT 3,1,10:PRINT "NAME" 640 PLOT 3,1,13:PRINT "ADDRESS" 650 PLOT 3,1,16:PRINT "MONEY OWING" 660 PLOT 3,1,19:PRINT "DESCRIPTION 670 IF A$= "U"GOTO 730 680 PLOT 3,14,10:PRINT " " 690 PLOT 3,14,13:PRINT " " 700 PLOT 3,14,16:PRINT " " 710 PLOT 3,14,19:PRINT " " 720 GOTO 770 730 PLOT 3,14,10:PRINT "BERNIE RAFFE" 740 PLOT 3,14,13:PRINT "HARROW , ENGLAND " 750 PLOT 3,14,16:PRINT "534.43-" 760 PLOT 3,14,19:PRINT "AVERAGE" 770 PLOT 3,0,22 780 PRINT "SUMMARY OF FACILITIES:-" 790 PLOT 3,0,24 800 PRINT " 1) CONTROL CHARACTERS & CURSOR POSITIONING KEYS (EXCEPT" 810 PRINT " LEFT & RIGHT CURSOR) ARE DISABLED." 820 PRINT " 2) CURSOR WILL NOT TRAVEL OUT OF A FIELD" 830 PRINT " 3) FINAL FIELD VALUE DEPENDS ON CONTENT OF FIELD ON THE" 840 PRINT " SCREEN & NOT ON THE ACTUAL KEY DEPRESSIONS" 850 PRINT " 4) 'DELETE/INSERT CHAR' & 'DELETE LINE' WORK WITHIN AFIELD" 860 PRINT " 5) ALPHABETIC CHARACTERS ARE DISABLED IN NUMERIC FIELDS" 870 PRINT " 6) THE 'TAB' KEY RETURNS CURSOR TO THE PREVIOUS FIELD" 875 REM GET EACH FIELD 880 X= 14:Y= 10:ML= 12:NA$= "A" 890 PLOT 6,38 900 GOSUB 100 910 IF KB= 9GOTO 900 920 GOSUB 1200 930 X= 14:Y= 13:ML= 17:NA$= "A" 940 PLOT 6,38 950 GOSUB 100 960 IF KB= 9GOTO 880 970 GOSUB 1200 980 X= 14:Y= 16:ML= 7:NA$= "N" 990 PLOT 6,38 1000 GOSUB 100 1010 IF KB= 9GOTO 930 1020 GOSUB 1200 1030 X= 14:Y= 19:ML= 7:NA$= "A" 1040 PLOT 6,38 1050 GOSUB 100 1060 IF KB= 9GOTO 980 1070 GOSUB 1200 1080 PLOT 3,15,21:INPUT "HIT RETURN FOR ANOTHER GO ";A$ 1085 REM CLEAR SCREEN AND DO IT AGAIN 1090 PLOT 3,0,8:FOR I= 1TO 23:PLOT 10,11:NEXT I 1100 GOTO 580 1200 REM FIELD PROCESSING ROUTINE. THIS JUST PRINTS VALUE; REAL PROGRAM WOULD PROCESS FIELD HERE 1210 PLOT 6,2,3,33,Y:PRINT "";FI$;" (";LEN (FI$);")";" " 1220 RETURN