'======================================== qbasic program written by Bill Gates (1981- 1982) '(old antique.
It is not allowed to be a small! :) 'file name: donkeyqb.bas' running: qbasic / run donkeyqb.bas' ======================= ================ Rem The IBM Personal Computer Donkey Rem Version 1.10 (C) Copyright IBM CORP 1981, 1982 Rem Licensed Material - Program Property Of IBM Def Seg: Poke 106, 0 Samples $ = "No" DIM CAR% (900) Goto 1010 Samples $ = "YES" 1010 Key Off: Screen 0, 1: Color 15, 0, 0: Width 40: CLS: Locate 5, 19: Print "IBM" locate 7, 12, 0: Print "Personal Computer" Color 10, 0: Locate 10, 9, 0: Print ChR $ (213) String $ (21, 205) CHR $ (184) Locate 11, 9, 0: Print ChR $ (179) "Donkey" ChR $ (179) Locate 12, 9, 0: Print ChR $ (179) String $ (21, 32) CHR $ (179) Locate 13, 9, 0: Print ChR $ (179) "Version 1.10" CHR $ (179) Locate 14, 9, 0: Print Chr $ (212) String $ (21, 205) CHR $ (190) Color 15, 0: Locate 17, 4, 0: Print "(C) Copyright IBM CORP 1981, 1982" Color 14, 0: Locate 23, 7, 0: Print "Press Space bar to Continue" 1100 if in Key $ <> "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" " IF (PEEK (& H410) And & H30) <> & H30 Then Def Seg: Goto 1291 Width 80: CLS: Locate 3, 1 Print "Hold It!" Print "You're not useful the color / graphics monitor adapter!" Print "
This Program Uses Graphics and Requires That Adapter. "Press the space bar to continue." DEF seg1240 if inkey $ <> "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" "" CHR $ (27) THEN GOTO 1298 IF CMD $ = "" "THEN GOTO 1298 GOTO 12501291 Key Off On Error Goto 1295 Play" P16 "Goto 13001295 Color 31, 0, 0 Print" this Program Requires Advanced Basic - Use Command 'Basica ': Color 15, 0, 0: Next: Resume 12981298 On Error Goto 0 Screen 0, 1: Color 7, 0, 0: CLS: End1300 Rem Color 0 Defint Ay Screen 1, 0: Color 8, 1 DIM Q% (500) DIM D1% (150), D2% (150), C1% (200), C2% (200) DIM DNK% (300) Gosub 1940 Gosub 1780 CLS DIM B% (300 ) For i = 2 to 300: b% (i) = -16384 192: Next b% (0) = 2: b% (1) = 1931540 REM CX = 110: CLS line (0, 0) - (305 , 199), B LINE (97, 195), 1, BF LINE (183, 6) - (305, 195), 1, BF Locate 3, 5: Print "Donkey" Locate 3, 29: Print "Driver" Locate 19, 25: Print "Press Space"; Locate 20, 25: Print "Bar to Switch"; Locate 21, 25: Print "Lanes"; Locate 23, 25: Print "Press Esc"; Locate 24, 25: Print "to exit"; for y = 4 to 199 Step 20: Line (140, y) - (140, y 10): Next Cy = 105: CX = 105 line (100, 0) - (100, 199): Line (180, 0) - (180, 199) 1670 Locate 5, 6: Print SD: Locate 5, 31: Print SM cy = cy - 4: if Cy <60 THEN 2230 PUT (CX, CY), CAR%, Preset DX = 105 42 * INT (RND * 2) for y =
(RND * -4) * 8 to 124 Step 6 Sound 20000, 1 a $ = inkey $: IF a $ = chr $ (27) Then 1298 else poke 106, 0: if Len (a $)> 0 THEN LINE Cx, CY) - (CX 28, CY 44), 0, BF: CX = 252 - CX: PUT (CX, CY), CAR%, Preset: Sound 200, 1 IF Y> = 3 THEN PUT (DX , DNK%, Pset IF CX = DX AND Y 25> = cyclhen 2060 if y and 3 THEN PUT (140, 6), B% Next: line (dx, 124) - (DX 32, 149 ), 0, BF: GOTO 16701780 CLS DRAW "S8C3" DRAW "BM12,1r3m 1,3d2R1ND2u1r2d4l2u1l1" DRAW "d7R1nd2u2r3d6l3u2l1d3m-1,1l3" DRAW "m-1, -1u3l1d2l3u6r3d2nd2r1u7l1d1l2" DRAW "u4r2d1nd2R1U2" DRAW "m 1, -3 "DRAW" BD10D2R3U2M-1, -1L1M-1,1 "DRAW" BD3D1R1U1L1BR2R1D1L1U1 "DRAW" BD2BL2D1R1U1L1BR2R1D1L1U1 "DRAW" BD2BL2D1R1U1L1BR2R1D1L1U1 "LINE (0, 0) - (40, 60),, B PAINT (1, 1) REM DIM CAR% (900) GET (1, 1) - (29, 45), CAR% RETURN1940 CLS DRAW "S08" DRAW "BM14, 18" DRAW "M 2, -4R8M 1, -1U1M 1, 1M 2, -1 "DRAW" M-1, 1M 1, 3M-1, 1M-1, -2M-1, 2 "DRAW" D3L1U3M-1, 1D2L 1U2L3D2L1U2M-1, -1 "DRAW" D3L1U5M-2, 3U1 "PAINT (21, 14): PRESET (40, 10) Preset (37, 11): Preset (40, 11) Get (13, 0) - (45, 25), DNK% RETURN 2060 SD = SD 1: Locate 14, 6: Print "Boom!" Get (DX, Y) - (DX 16, Y 25), D1% D1x = DX: D1Y = Y: D2x = DX 17 GET (DX 17, Y) - (DX 31, Y 25), D2% Get (CX, CY) - (CX 14, CY 44) , C1% GET (CX 15, CY) - (CX 28, CY 44), C2% C1X = CX: C1Y =