epbas.lgb.hu :: Enterprise-128 EXOS file analyzer, lister and disassembler

File name: /tmp/phpoQjhYd (5996 bytes) Options: bin=None cset='UK' dasm='' html='' info='' out='/tmp/phpoQjhYd.out' EP-ASCII: UK EXOS header pos/serial: #0 at 0x0 EXOS type/header: 0x4 [00 04 4C 17 00 00 00 00 00 00 00 00 00 00 00 00] EXOS type determined: IS-BASIC program (single)
Program: 0x0, size: 0x174c bytes.
100 PROGRAM "stockcar.bas" 110 SET 26,1:SET 7,1 120 CLEAR FONT 130 TEXT 40 140 OUT 191,12 150 SET 22,1:SET 23,2:SET 24,40:SET 25,20:SET 8,1 160 OPEN #1:"video:" 170 OPEN #2:"video:" 180 SET #1:PALETTE0,25,182,246,190,254,183,247 190 SET #2:PALETTE0,25,182,246,190,254,183,247 200 SET #1:LINEMODE3 210 SET #2:LINEMODE3 220 SET 22,0:SET 23,0:SET 25,4 230 OPEN #3:"video:" 240 SET #3:PALETTE0,219,0,0 250 LET CON=0 260 CALL CHARS 270 TEXT 280 POKE 56,245 290 CALL USR(56,0) 300 SET #102:PALETTE0,0,0,0 310 PRINT #102,AT2,10:"ENTERPRESS PROGRAMS" 320 PRINT #102,AT4,13:"STOCK CAR RACE" 330 PRINT #102,AT8,1:"SELECT CONTROL:" 340 PRINT #102,AT11,9:"1 INTERNAL" 350 PRINT #102,AT14,9:"2 EXTERNAL 1" 360 PRINT #102,AT17,9:"3 EXTERNAL 2" 370 PRINT #102,AT22,10:"PRESS FIRE TO START" 380 CALL LIGHT 390 LET I$=INKEY$ 400 SELECT CASEI$ 410 CASE "1" 420 IF CON<>0THEN 430 LET CON=0 440 SOUND PITCH37,DURATION5,SOURCE2 450 END IF 460 CASE "2" 470 IF CON<>1THEN 480 LET CON=1 490 SOUND PITCH49,DURATION5,SOURCE2 500 END IF 510 CASE "3" 520 IF CON<>2THEN 530 LET CON=2 540 SOUND PITCH61,DURATION5,SOURCE2 550 END IF 560 CASE ELSE 570 END SELECT 580 IF JOY(CON)<>16THEN 390 590 POKE 56,201 600 OUT 166,9:OUT 168,0:OUT 172,0:OUT 167,0:OUT 181,7 610 LET LEV,SCORE=0 620 RESTORE 2220 630 LET TIM,CIRCL=0:LET AS=1:LET LIM=40:LET CX,CXB=640:LET CY,CYB=150:LET ASB=2:LET CH,CHB,CHB2=97:LET XP,YP=0 640 PRINT #102,AT22,10:" PLEASE WAIT! " 650 CALL SCREEN 660 SELECT CASEJOY(CON) 670 CASE 1 680 LET CH=CH-1-8*(CH=97) 690 CASE 2 700 LET CH=CH+1+8*(CH=104) 710 CASE 4 720 LET XP=XP+4*(XP>3):LET YP=YP+4*(YP>3) 730 CASE 8 740 LET XP=XP-4*(XP<20):LET YP=YP-4*(YP<24) 750 CASE ELSE 760 END SELECT 770 PLOT #ASB:CXB,CYB, 780 PRINT #ASB:CHR$(CHB2); 790 LET CHB2=CHB:LET CXB=CX:LET CYB=CY:LET CHB=CH 800 SELECT CASECH 810 CASE 97 820 LET CXN=CX+XP:LET CXC=CXN+60:LET CYN=CY:LET CYC=CYN 830 CASE 98 840 LET CXN=CX+XP:LET CYN=CY+YP:LET CXC=CXN+60:LET CYC=CYN+4 850 CASE 99 860 LET CYN=CY+YP:LET CXN=CX:LET CXC=CXN:LET CYC=CYN+4 870 CASE 100 880 LET CXN=CX-XP:LET CYN=CY+YP:LET CXC=CXN-4:LET CYC=CYN+4 890 CASE 101 900 LET CXN=CX-XP:LET CYN=CY:LET CXC=CXN-4:LET CYC=CYN 910 CASE 102 920 LET CYN=CY-YP:LET CXN=CX-XP:LET CXC=CXN-4:LET CYC=CYN-68 930 CASE 103 940 LET CYN=CY-YP:LET CXN=CX:LET CXC=CXN:LET CYC=CYN-68 950 CASE 104 960 LET CXN=CX+XP:LET CYN=CY-YP:LET CXC=CXN+60:LET CYC=CYN-68 970 CASE ELSE 980 END SELECT 990 PLOT #ASB:CXC,CYC, 1000 GET #ASB:CHEC$ 1010 IF ORD(CHEC$)=0THEN 1020 LET CX=CXN:LET CY=CYN 1030 PLOT #ASB:CX,CY, 1040 PRINT #ASB:CHR$(CH); 1050 ELSE 1060 LET XP,YP=0 1070 PLOT #ASB:CX,CY, 1080 PRINT #ASB:CHR$(CH); 1090 CALL BUMM 1100 END IF 1110 LET CAR=ASB:LET ASB=AS:LET AS=CAR 1120 DISPLAY #AS:AT1FROM1TO20 1130 LET TIM=TIM+1 1140 PRINT #3,AT4,6:TIM; 1150 LET CIRCL=CIRCL-(CX>640-XP/2ANDCX<640+XP/2ANDCY<400AND(CH=97ORCH=98ORCH=104)ANDXP<>0) 1160 PRINT #3,AT4,37:CIRCL; 1170 OUT 160,76-XP*2:OUT 171,63-CX/21 1180 OUT 175,CX/21:OUT 181,7 1190 LET STP=IN(181) 1200 IF (STPBAND1)=0THEN 270 1210 IF CIRCL<5THEN 660 1220 IF TIM>LIMTHEN 1230 POKE 56,245 1240 CALL USR(56,0) 1250 TEXT 40 1260 SET #102:PALETTE0,0,0,0 1270 PRINT #102,AT5,17:"SORRY!" 1280 PRINT #102,AT9,13:"BUT YOU LOSE!" 1290 PRINT #102,AT17,13:"YOUR SCORE:";SCORE 1300 PRINT #102,AT20,13:"PRESS ANY KEY" 1310 CALL LIGHT 1320 SPOKE 255,16042,0 1330 IF INKEY$=""THEN 1330 1340 GOTO 270 1350 ELSE 1360 OUT 171,0:OUT 175,0 1370 LET LEV=LEV+1:LET SCORE=SCORE+(LIM-TIM)*10 1380 IF LEV<3THEN 630 1390 END IF 1400 POKE 56,245 1410 CALL USR(56,0) 1420 TEXT 40 1430 SET #102:PALETTE0,0,0,0 1440 PRINT #102,AT5,12:"CONGRATULATIONS!" 1450 PRINT #102,AT10,12:"YOU ARE THE BEST" 1460 PRINT #102,AT12,12:"STOCKKAR RACER!" 1470 PRINT #102,AT15,12:"YOUR SCORE:";SCORE 1480 PRINT #102,AT20,13:"PRESS ANY KEY" 1490 CALL LIGHT 1500 SPOKE 255,16042,0 1510 IF INKEY$=""THEN 1510 1520 GOTO 270 1530 DEF BUMM 1540 FOR Z=0TO6 1550 OUT 160,80-10*Z:OUT 171,60-10*Z:OUT 175,10*Z 1560 CALL PAUSE(5) 1570 NEXT Z 1580 FOR Z=5TO0STEP-1 1590 OUT 160,80-10*Z:OUT 171,60-10*Z:OUT 175,10*Z 1600 CALL PAUSE(5) 1610 NEXT Z 1620 END DEF 1630 DEF CHARS 1640 SET CHARACTER97,0,36,126,251,189,251,126,36,0 1650 SET CHARACTER98,0,12,62,115,251,222,124,48,0 1660 SET CHARACTER99,56,108,214,124,124,254,108,56,0 1670 SET CHARACTER100,0,48,124,206,223,123,30,12,0 1680 SET CHARACTER101,0,36,126,223,189,223,126,36,0 1690 SET CHARACTER102,0,12,62,123,223,206,120,48,0 1700 SET CHARACTER103,28,54,127,62,62,107,54,28,0 1710 SET CHARACTER104,0,48,124,222,251,115,62,12,0 1720 END DEF 1730 DEF LIGHT 1740 RESTORE 1810 1750 DO 1760 READ C 1770 SET #102:PALETTE0,C,0,54 1780 CALL PAUSE(0) 1790 LOOP UNTILC=201 1800 END DEF 1810 DATA 128,16,144,2,130,18,146,210,154,218,147,211,155,219,91,203,75,217,89,201 1820 DEF PAUSE(T) 1830 FOR I=0TOT 1840 NEXT I 1850 END DEF 1860 DEF SCREEN 1870 LET SZIN=2 1880 CLEAR #1 1890 CLEAR #2 1900 CLEAR #3 1910 DO 1920 SET #1:INKSZIN 1930 SET #2:INKSZIN 1940 READ X,Y,P,M 1950 SELECT CASEM 1960 CASE 0 1970 PLOT #1:X,Y,:PLOT #2:X,Y, 1980 FOR I=1TOP 1990 PRINT #1:CHR$(159);:PRINT #2:CHR$(159); 2000 NEXT I 2010 CASE 1 2020 FOR I=YTOY+P*72STEP72 2030 PLOT #1:X,I,:PLOT #2:X,I, 2040 PRINT #1:CHR$(159);:PRINT #2:CHR$(159); 2050 NEXT I 2060 CASE ELSE 2070 LET LIM=M 2080 END SELECT 2090 LET SZIN=SZIN+1+6*(SZIN=7) 2100 LOOP UNTILP=0 2110 SET #1:INK1 2120 SET #2:INK1 2130 PLOT #AS:CX,CY,:PLOT #ASB:CXB,CYB, 2140 PRINT #AS:"a";:PRINT #ASB:"a"; 2150 PRINT #3,AT2,6:"LEVEL";LEV:PRINT #3,AT2,26:"LIMIT:";LIM;"S"; 2160 PRINT #3,AT4,1:"TIME:";TIM; 2170 PRINT #3,AT4,15:"SCORE:";SCORE; 2180 PRINT #3,AT4,30:"CIRCLE:";CIRCL; 2190 DISPLAY #3:AT21FROM1TO4 2200 DISPLAY #AS:AT1FROM1TO20 2210 END DEF 2220 DATA 0,68,20,0,0,716,20,0,0,140,7,1,1216,140,7,1,256,352,12,0,256,424,12,0,0,0,0,600 2230 DATA 192,68,14,0,0,716,7,0,704,716,9,0,192,428,14,0,64,212,2,0,128,68,1,1,0,212,6,1,368,644,6,0,1088,68,2,1,1216,212,6,1,320,356,8,0,1152,212,1,0,0,0,0,700 2240 DATA 0,68,20,0,0,716,20,0,64,392,7,0,768,392,7,0,0,140,7,1,1216,140,7,1,160,554,15,0,160,230,15,0,608,284,3,1,0,0,0,1200
EXOS header pos/serial: #1 at 0x175c EXOS type/header: 0xa [00 0A 00 00 00 00 00 00 00 00 00 00 00 00 00 00] EXOS type determined: End of module
End of FILE parsing, because: End-of-module header got (type=10)



Enterprise-128 EXOS file analyzer, lister and disassembler v0.5.8 ©2012,2013 "LGB" Gábor Lénárt (lgb at-sign lgb dot hu)