|
|
Программы, присланные одним из посетителей сайта.
Орфография автора сохранена. Связь с автором игры: :lllPARISlll@mail.ru
Если у Вас есть свои игры/программы для этого микрокомпьютера - напишите мне, пожалуйста!
Внимание! Программы рассчитанны на аппаратно разогнанный калькулятор. Вот что пишет автор приведенных ниже программ: о чудо!!! Если бы я знал об этом в школьные годы!!! Разогнал процессор в 4 раза! Закоротив резисторы R1 и R2 через выключатель. Но потом решил просто уменьшить номинал резистора R1(10КоМ) до 0КоМ,а резистор R2(68КоМ) до 10 КоМ,и закоротил его через отдельный выключатель. И теперь мой МК,стал работать в обычном турбо режиме и сверх турбо режиме,когда я закорачиваю через выключатель резистор R2. Загоревшись таким открытием скорости для моего МК-85,предложение на которое я выцепил в интернете от одного любителя,я и решил восстановить свои былые игры,но уже в лучшем варианте и оформлении,так как увеличились его(МК-85) возможности как в скорости,так и в памяти! Игры стали намного шустрее и оформление финала красивее!
Игра "Air Attack" |
1 VACDEFM 2:H$(1)="OO4DUD4":H$(2)="O4DUD4":H$(3)="4DUD4"
2 A$="O":A$(1)=A$:A$(2)="OOOOOCO":A$(3)="OOOO636":A$(4)="OOOCO"
3 A$(5)="OO636":A$(6)="OCO":A$(7)="636":N(1)=1:N(2)=1:N(3)=1
4 J$(2)="OOOOA4A":J$(3)="OOA4A":J$(4)="A4A":$="OOOOOOOOOOOO"
5 CSR ,11:PRINT " >Air Attack<";:GOSUB 43:GOUSUB 41
6 CSR ,11:LETC H$(2):PRINT CHR 96;
7 Z(1)=Z(1)+1:Y$="246O246":X$=GETC(Y$,INT ((7+1-1)*RAN#+1))
8 IF Z(1)>4OO;X$=A$:IF Z(1)=415;GOSUB 41:GOTO 34
9 $=X$+MID(1,11):FOR Z(2)=O TO 1
1O FOR Y=O TO 9:Z$=KEY:IF Z$="1";Z=1:GOTO 14
11 IF Z$="4";Z=2:GOTO 14
12 IF Z$="7";Z=3:GOTO 14
13 NEXT Y:Z=O
14 IF Z<> O;CSR 11:LETC H$(Z):PRINT CHR 96;
15 FOR Y=1O TO O STEP -1
16 CSR Y:LETC A$(VAL MID(Y+1,1)+Z(2)):PRINT CHR 96;:NEXT Y
17 IF MID(11,1)<>"O";IF Z(2)=1;GOTO 32
18 Y=1:GOTO 22
19 Y=2:GOTO 22
2O Y=3:GOTO 22
21 NEXT Z(2):GOSUB 45:GOTO 7
22 IF Z<>O THEN 23:IF N(Y)=1 THEN 31
23 IF N(Y)=1;N(Y)=12:Q(Y)=57:T(Y)=Z+1:Z=O
24 N(Y)=N(Y)-1
25 IF VAL MID(N(Y)+1,1)=(T(Y)-1)*2;N(Y)=N(Y)+1:GOTO 28
26 IF VAL MID(N(Y),1)=(T(Y)-1)*2;GOTO 28
27 DRAW Q(Y)=Q(Y)-5,T(Y):GOTO 31
28 CSR N(Y)-1:LETC J$(T(Y)):PRINT CHR 96;
29 $=MID(1,N(Y)-1)+"O"+MID(N(Y)+1,12-N(Y))
3O N(Y)=1
31 GOTO 18+Y
32 CSR 11:PRINT "*";:GOSUB 43:GOSUB 41
33 CSR O:PRINT "ВЫ РАЗБИТЫ!!";:GOSUB 43:GOSUB 41:GOTO 38
34 A$="OOO7":A$(1)="12FVF":A$(2)="O4VVVF7":A$(3)="OOOOVVV"
35 A$(4)="O226FVS":CSR 7:FOR Z=O TO 4:LETC A$(Z):PRINT CHR 96;
36 NEXT Z:FOR Y=1 TO 15:CSR ,7:PRINT "";:X=99^99
37 CSR O:PRINT "победа!";:X=99^99:NEXT Y:GOSUB 41
38 CSR O,:PRINT "Ещё? D/N";
39 $=KEY:IF $="D" THEN 1:IF $="N";CSR O,:PRINT "";:DEFM O:END
4O GOTO 39
41 FOR X=O TO 5:CSR X:PRINT " ";:CSR 11-X:PRINT " ";:Y=2^2
42 NEXT X:RETURN
43 FOR X=O TO 1OOO:NEXT X:RETURN
45 Y=INT (1O*RAN#)+1:IF MID(Y,1)="O" THEN 51
46 IF MID(Y,1)="4";GOTO 47+INT (2*RAN#)+1
47 X$="4":GOTO 5O
48 X$="2":GOTO 5O
49 X$="6"
5O $=MID(1,Y-1)+X$+MID(Y+1,12-Y)
51 RETURN |
Описание игры:
Вы летите на истребителе,и вам на пути попадаються самолеты
камикадзе,которые возвращались на аэробазу для пополнения боевых запасов. Им нужно помешать это сделать,уничтожив их! Но
если вы подпустите их сильно близко к себе,то они вас протаранят! Ведь не зря они камикадзе! В вашем распоряжении бортовая
пушка,которая немного повреждена в бою,и иногда заедает... Но
стрелять вполне может. В этом тоже заключаеться сложность игры!
Клавиши управления стрельбой и самолетом "1","4","7". Нужно нажимать их плавно! Будьте внимательны,вражеские самолеты будут
пытаться увернуться от пуль! Поэтому стреляйте грамотно,не тратя в холостую снаряды. Удачи!
Комментарии к коду:
ПЕРЕМЕННЫЕ:H$(1-3)-истребитель,A$(O-7)враж.самолеты,J$(2-4)-
взрывы,N(1-3)-пули,$-кодировка поля игры,Z(1)-счетчик игры
1 VACDEFM 2:H$(1)="OO4DUD4":H$(2)="O4DUD4":H$(3)="4DUD4"
2 A$="O":A$(1)=A$:A$(2)="OOOOOCO":A$(3)="OOOO636":A$(4)="OOOCO"
3 A$(5)="OO636":A$(6)="OCO":A$(7)="636":N(1)=1:N(2)=1:N(3)=1
4 J$(2)="OOOOA4A":J$(3)="OOA4A":J$(4)="A4A":$="OOOOOOOOOOOO"
> Заставка игры
5 CSR ,11:PRINT " >Air Attack<";:GOSUB 43:GOUSUB 41
6 CSR ,11:LETC H$(2):PRINT CHR 96;
> Счетчик игры Z(1),генератор случайных чисел для расстановки
враж. самолетов Y$ и X$
7 Z(1)=Z(1)+1:Y$="246O246":X$=GETC(Y$,INT ((7+1-1)*RAN#+1))
8 IF Z(1)>4OO;X$=A$:IF Z(1)=415;GOSUB 41:GOTO 34
> Расстановка,склейка кодировки поля игры для отображения враж.
самолетов в переменной $,цыкл хода врвж.самолетов Z(2),джостик упрпвления истребителем Z$
9 $=X$+MID(1,11):FOR Z(2)=O TO 1
1O FOR Y=O TO 9:Z$=KEY:IF Z$="1";Z=1:GOTO 14
11 IF Z$="4";Z=2:GOTO 14
12 IF Z$="7";Z=3:GOTO 14
13 NEXT Y:Z=O
> Операторы для отображения истребителя и враж.самолетов,условие в случае проигрыша
14 IF Z<> O;CSR 11:LETC H$(Z):PRINT CHR 96;
15 FOR Y=1O TO O STEP -1
16 CSR Y:LETC A$(VAL MID(Y+1,1)+Z(2)):PRINT CHR 96;:NEXT Y
17 IF MID(11,1)<>"O";IF Z(2)=1;GOTO 32
> Алгоритм полета и отображения пуль-N(1),N(2),N(3) и взрывов-
J$
18 Y=1:GOTO 22
19 Y=2:GOTO 22
2O Y=3:GOTO 22
21 NEXT Z(2):GOSUB 45:GOTO 7
22 IF Z<>O THEN 23:IF N(Y)=1 THEN 31
23 IF N(Y)=1;N(Y)=12:Q(Y)=57:T(Y)=Z+1:Z=O
24 N(Y)=N(Y)-1
> При поподании пули в цель
25 IF VAL MID(N(Y)+1,1)=(T(Y)-1)*2;N(Y)=N(Y)+1:GOTO 28
26 IF VAL MID(N(Y),1)=(T(Y)-1)*2;GOTO 28
> Отображение пуль и взрывов
27 DRAW Q(Y)=Q(Y)-5,T(Y):GOTO 31
28 CSR N(Y)-1:LETC J$(T(Y)):PRINT CHR 96;
> Обновление кодировки поля расстановки враж.самолетов,где
убираються,стераються сбитые пулями
29 $=MID(1,N(Y)-1)+"O"+MID(N(Y)+1,12-N(Y))
3O N(Y)=1
31 GOTO 18+Y
> Заставка в случае проигрыша
32 CSR 11:PRINT "*";:GOSUB 43:GOSUB 41
33 CSR O:PRINT "ВЫ РАЗБИТЫ!!";:GOSUB 43:GOSUB 41:GOTO 38
> Заставка в случае прохождения игры,финал
34 A$="OOO7":A$(1)="12FVF":A$(2)="O4VVVF7":A$(3)="OOOOVVV"
35 A$(4)="O226FVS":CSR 7:FOR Z=O TO 4:LETC A$(Z):PRINT CHR 96;
36 NEXT Z:FOR Y=1 TO 15:CSR ,7:PRINT "";:X=99^99
37 CSR O:PRINT "победа!";:X=99^99:NEXT Y:GOSUB 41
> Запрос на повтор или выход из игры
38 CSR O,:PRINT "Ещё? D/N";
39 $=KEY:IF $="D" THEN 1:IF $="N";CSR O,:PRINT "";:DEFM O:END
4O GOTO 39
> Цыклы подпрограм:-постепенное удаление изображения с экрана,
и задержка изображения на экране
41 FOR X=O TO 5:CSR X:PRINT " ";:CSR 11-X:PRINT " ";:Y=2^2
42 NEXT X:RETURN
43 FOR X=O TO 1OOO:NEXT X:RETURN
> Подпрограмма генерации случайного смещения враж.самолетов
45 Y=INT (1O*RAN#)+1:IF MID(Y,1)="O" THEN 51
46 IF MID(Y,1)="4";GOTO 47+INT (2*RAN#)+1
47 X$="4":GOTO 5O
48 X$="2":GOTO 5O
49 X$="6"
5O $=MID(1,Y-1)+X$+MID(Y+1,12-Y)
51 RETURN
|
|
1 VACDEFM O:A$="ELRLRLE":A$(1)="ALAOOOL":A$(2)="LAOOOAL"
2 A$(3)="LOOOALA":E$="ELRERLE":E$(1)="ALARERL":E$(2)="LARERAL"
3 E$(3)="LRERALA":$="2222222222":K=2
4 CSR ,11:PRINT " Auto Rally ";:GOSUB 56:Y=11:GOSUB 55
5 CSR 8:LETC E$(2):PRINT CHR 96;
6 N=N+1:IF N=25O THEN 24:IF N=S+1O;S=S+1O:P=P+1
7 CSR 9:PRINT P;:CSR 9:LETC "LALALAL":PRINT CHR 96;
8 Y$="O123":X$=GETC(Y$,INT((4+1-1)*RAN#+1)):IF N>=235;X$="2"
9 IF X$="O";IF MID (1,1)<>"2";X$="2"
1O IF MID (1,1)="O";X$="2"
11 $=X$+MID(1,9):GOSUB 19
12 IF K<>VAL MID(9,1) THEN 16
13 CSR 8:LETC E$(K):PRINT CHR 96;:FOR Y=7 TO O STEP -1:CSR Y:
14 LETC A$(VAL MID(Y+1,1)):PRINT CHR 96;:NEXT Y:IF K=O;K=2
15 GOSUB 19:GOTO 6
16 FOR Y=1 TO 5:CSR 8:PRINT " ";:X=99^99
17 CSR 8:LETC E$(VAL MID(1O,1)):PRINT CHR 96;:X=99^99:NEXT Y
18 CSR ,2:PRINT "НеудачА! ";:GOSUB 56:Y=1O:GOSUB 55:GOTO 5O
19 FOR Y=O TO 5:Z$=KEY:IF Z$="Q";K=O:GOTO 23
2O IF Z$=CHR 5;K=K+1:GOTO 23
21 IF Z$=CHR 6;K=K-1:GOTO 23
22 NEXT Y
23 RETURN
24 CSR O,:PRINT "";:GOSUB 56:A$="OOO133":A$(1)="O1FVVJC"
25 A$(2)="V44VVVO":A$(3)="GSVV32S":CSR 11:FOR I=O TO 3
26 LETC A$(I):PRINT CHR 96;:X=2^2:NEXT I:Y=7:GOSUB 55
27 FOR I=11 TO 6 STEP -1:CSR I,:LETC "O46E4AP":PRINT CHR 96;
28 X=99^99:CSR I,:LETC "O8CS88O":PRINT CHR 96;:X=99^99:NEXT I
29 CSR 11:LETC A$="OFVE44A":PRINT CHR 96;:X=99^99
3O FOR I=1O TO 8 STEP -2:CSR I,:LETC A$:PRINT CHR 96;
31 LETC "O84S4AP":PRINT CHR 96;:X=99^99:CSR I-1,:LETC A$
32 PRINT CHR 96;:LETC "O84S44C":PRINT CHR 96;:X=99^99:NEXT I
33 FOR I=4 TO 5:CSR I:LETC "O4CE4AJ":PRINT CHR 96;:X=99^99
34 CSR I:LETC "O267223":PRINT CHR 96;:X=99^99:CSR I:PRINT " ";
35 NEXT I:CSR 5:LETC "O123223":PRINT CHR 96;:LETC "OG8O88O"
36 PRINT CHR 96;:X=99^99*99^99:CSR 5:LETC A$="O4EL4AR"
37 PRINT CHR 96;:LETC A$:PRINT CHR 96;:X=99^99*99^99
38 CSR 6:LETC "OKE54AR":PRINT CHR 96;:FOR I=O TO 12
39 CSR 5:LETC "OLU44AR":PRINT CHR 96;:X=99^99
4O CSR 5:LETC "GLE44AR":PRINT CHR 96;:X=99^99:NEXT I
41 Y=1O:CSR 1O:GOSUB 55
5O CSR O,:PRINT "Ещё? D/N";
51 $=KEY:IF $="D" THEN 1:IF $="N";CSR O,:PRINT "";:DEFM O:END
52 GOTO 51
55 FOR Z=O TO Y:PRINT " ";:X=2^3:NEXT Z:RETURN
56 FOR X=O TO 1OOO:NEXT X:RETURN |
Описание игры:
Вам необходимо пройти не простой путь на внедорожнике,вовремя реагируя на крутые повороты и ямы встречающиеся на вашем пути. Клавиши управления "<"-поворот в право,">"-поворот в лево,"Q"-прыжок через яму. В правом углу индикатора показываеться
количество пройденого отрезка пути. Вам нужно добраться до 25-го отрезка пути целым и невредимым,чтобы получить награду и славу за свою ловкость! Помните,у вас одна попытка,чтобы добраться до финиша! Вы не имеете право на ошибку, иначе машина разобьеться! Удачи вам в этом не легком,пути к попеде и славе!
Комментарии к коду:
>ПЕРЕМЕННЫЕ:A$(O-3)-рельеф трассы,E$(O-3)-автомобиль и трасса,$-кодировка рельефа трассы,K-положение мшины
1 VACDEFM O:A$="ELRLRLE":A$(1)="ALAOOOL":A$(2)="LAOOOAL"
2 A$(3)="LOOOALA":E$="ELRERLE":E$(1)="ALARERL":E$(2)="LARERAL"
3 E$(3)="LRERALA":$="2222222222":K=2
> Заставка начала игры
4 CSR ,11:PRINT " Auto Rally ";:GOSUB 56:Y=11:GOSUB 55
5 CSR 8:LETC E$(2):PRINT CHR 96;
> Счетчик игры-N,счетчик пройденного отрезка пути-S,P
6 N=N+1:IF N=25O THEN 24:IF N=S+1O;S=S+1O:P=P+1
7 CSR 9:PRINT P;:CSR 9:LETC "LALALAL":PRINT CHR 96;
> Генератор случайных чисел для расстановки рельефа трассы Y$,
X$;расстановка,склейка кодировки рельефа трассы в переменной $
для ее последующего отображения
8 Y$="O123":X$=GETC(Y$,INT((4+1-1)*RAN#+1)):IF N>=235;X$="2"
9 IF X$="O";IF MID (1,1)<>"2";X$="2"
1O IF MID (1,1)="O";X$="2"
11 $=X$+MID(1,9):GOSUB 19
> условный переход в случае проигрыша;вывод на экран рельефа
трассы и автомобиля проходящего ее
12 IF K<>VAL MID(9,1) THEN 16
13 CSR 8:LETC E$(K):PRINT CHR 96;:FOR Y=7 TO O STEP -1:CSR Y:
14 LETC A$(VAL MID(Y+1,1)):PRINT CHR 96;:NEXT Y:IF K=O;K=2
15 GOSUB 19:GOTO 6
> Заставка в случае проигрыша
16 FOR Y=1 TO 5:CSR 8:PRINT " ";:X=99^99
17 CSR 8:LETC E$(VAL MID(1O,1)):PRINT CHR 96;:X=99^99:NEXT Y
18 CSR ,2:PRINT "НеудачА! ";:GOSUB 56:Y=1O:GOSUB 55:GOTO 5O
> Подпрограмма-джойстик,для управления автомобилем
19 FOR Y=O TO 5:Z$=KEY:IF Z$="Q";K=O:GOTO 23
2O IF Z$=CHR 5;K=K+1:GOTO 23
21 IF Z$=CHR 6;K=K-1:GOTO 23
22 NEXT Y
23 RETURN
> Заставка в случае прохождения игры,финал
24 CSR O,:PRINT "";:GOSUB 56:A$="OOO133":A$(1)="O1FVVJC"
25 A$(2)="V44VVVO":A$(3)="GSVV32S":CSR 11:FOR I=O TO 3
26 LETC A$(I):PRINT CHR 96;:X=2^2:NEXT I:Y=7:GOSUB 55
27 FOR I=11 TO 6 STEP -1:CSR I,:LETC "O46E4AP":PRINT CHR 96;
28 X=99^99:CSR I,:LETC "O8CS88O":PRINT CHR 96;:X=99^99:NEXT I
29 CSR 11:LETC A$="OFVE44A":PRINT CHR 96;:X=99^99
3O FOR I=1O TO 8 STEP -2:CSR I,:LETC A$:PRINT CHR 96;
31 LETC "O84S4AP":PRINT CHR 96;:X=99^99:CSR I-1,:LETC A$
32 PRINT CHR 96;:LETC "O84S44C":PRINT CHR 96;:X=99^99:NEXT I
33 FOR I=4 TO 5:CSR I:LETC "O4CE4AJ":PRINT CHR 96;:X=99^99
34 CSR I:LETC "O267223":PRINT CHR 96;:X=99^99:CSR I:PRINT " ";
35 NEXT I:CSR 5:LETC "O123223":PRINT CHR 96;:LETC "OG8O88O"
36 PRINT CHR 96;:X=99^99*99^99:CSR 5:LETC A$="O4EL4AR"
37 PRINT CHR 96;:LETC A$:PRINT CHR 96;:X=99^99*99^99
38 CSR 6:LETC "OKE54AR":PRINT CHR 96;:FOR I=O TO 12
39 CSR 5:LETC "OLU44AR":PRINT CHR 96;:X=99^99
4O CSR 5:LETC "GLE44AR":PRINT CHR 96;:X=99^99:NEXT I
41 Y=1O:CSR 1O:GOSUB 55
> Запрос на повтор или выход из игры
5O CSR O,:PRINT "Ещё? D/N";
51 $=KEY:IF $="D" THEN 1:IF $="N";CSR O,:PRINT "";:DEFM O:END
52 GOTO 51
> Цыклы подпрограм:-постепенное сдвигания изображения на экране,и задержка изображения на экране
55 FOR Z=O TO Y:PRINT " ";:X=2^3:NEXT Z:RETURN
56 FOR X=O TO 1OOO:NEXT X:RETURN
|
|
|
|
|