Обновить

Представлены победители конкурса 10LINE BASIC 2025, в котором участники должны написать игру в 10 строках кода BASIC

Время на прочтение1 мин
Охват и читатели5.1K
Всего голосов 7: ↑7 и ↓0+10
Комментарии9

Комментарии 9

Строк-то может и 10, зато они длиной по 200+ символов.

Да, хотелось бы пример кода...

Примеры тут есть https://bunsen.itch.io/snailrace-commodore-64-by-metzelwurst

Скрытый текст
1 ?"{CLR}":Q=5:U=54272:V=53268:T=13:POKEV+12,0:POKEV+13,0:FORI=UTOU+24:POKEI,0:NEXT:POKEU+24,15:FORI=0TO62:POKE832+I,0:NEXT
2 FORI=0TO34:READX:POKE832+I,X:NEXT:FORI=0TO35:READX:POKE896+I,X:NEXT:DIMI(Q),X(Q),Y(Q):POKEV+1,31:POKEV+3,31:POKEV+9,31
3 ?"SNAILRACE, PRESS 1 -"Q:FORI=1TOQ:POKEV+19+I,I+2:FORJ=1TO33:POKE1143+J+I*160,64:NEXT:POKE1144+I*160,48+I:NEXT:W=2039
4 FORS=1TOQ:POKEW+S,13:X(S)=30:Y(S)=50+S*32:POKEV-20+2*(S-1),X(S):POKEV-20+2*(S-1)+1,Y(S):POKEV+19+S,S+2:POKEW+S,T:NEXT
5 GETA$:ON-(A$<"1"ORA$>"5")GOTO5:J=VAL(A$):?"YOU CHOOSE"J"!":FORI=1TO21:POKE1137+I*40,92:NEXT:P=1098+J*160:POKEP,60
6 FORS=1TOQ:R=INT(RND(1)*15):X(S)=X(S)+R:POKEV-20+2*(S-1),X(S):T=PEEK(W+S):IFT=13THENT=14:GOTO8
7 T=13:DATA0,3,142,0,4,81,3,229,85,4,19,142,9,137,4,18,73,140,20,73,252,20,137,120,18,53,8,81,199,152,120,15,240,63,252
8 POKEW+S,T:POKEU+5,190:FORI=255TO0STEP-24:POKEU+1,I:POKEU+4,129:NEXT:POKEU+4,0:ON-(X(S)>240)GOTO9:NEXTS:GOTO6
9 ?"SNAIL"S"WINS":POKEU+5,190:POKEU+4,17:POKEU+24,15:FORF=0TO99:POKEU+1,INT(RND(1)*15):NEXT:POKEU+4,32:WAIT198,1:RUN
10DATA0,3,142,0,4,81,15,133,85,16,67,142,38,33,12,73,35,24,81,39,248,82,39,144,72,215,16,71,31,16,224,63,48,255,255,224


Смотрю на код, и вспоминаю... У нас в школе был класс Корветов, и мы на бейсике задачи решали. У меня была превычка несколько операторов, разделённых двоеточтем (как в примере сверху) в одну строку писать. И это очень бесило нашего учителя информатики :)

Сапёр для Спектрума-48. Реально 10 строк кода, но под 255 байт каждая (ограничение ZX).

Листинг почему-то в виде картинки, ну ок

ужосы

Я что-то подзабыл, неужели там была возможность разделять операторы двоеточием? И даже в IF/THEN ?!..
Слишком быстро на ASM перешёл, видимо. Не успело въесться в память.
Вот "LD HL, DE" помню как сейчас :)

А тут нет IF, тут модифицируют в памяти переменные бейсика и используют RUN для косвенного перехода... в цикле...

Листинг картинкой из-за того, что на современных машинах таких красивых шрифтов не бывает, а у нас искусство.

Листинг наверное тормозил очень сильно. Помнится чем длиннее строка, тем медленнее работает её отображение на экране.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации