User Tag List

Результаты опроса: Нужен ли конкурс игр на бейсике?

Голосовавшие
56. Вы ещё не участвовали в этом опросе
  • Да, нужен, буду участвовать.

    7 12.50%
  • Да, нужен, буду спонсором.

    2 3.57%
  • Да, нужен, буду зрителем.

    29 51.79%
  • Нет, не нужен.

    18 32.14%
Страница 15 из 37 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя
Показано с 141 по 150 из 368

Тема: Конкурс игр на бейсике

  1. #141

    Регистрация
    26.11.2013
    Адрес
    г. Новосибирск
    Сообщений
    1,103
    Спасибо Благодарностей отдано 
    1,336
    Спасибо Благодарностей получено 
    323
    Поблагодарили
    152 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вариант с большими массивами, но с выбором управления.
    Вложения Вложения

  2. #142

    Регистрация
    25.01.2005
    Адрес
    Miass, Chelyabinsk region
    Сообщений
    4,094
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Andrew771 Посмотреть сообщение
    Иначе программа будет состоять из одних RANDOMIZE USR и машкода
    был вроде еще способ через def fn ... usr xxx так что randomize не круто и не обязательно

  3. #143

    Регистрация
    04.07.2005
    Адрес
    Нижний Тагил
    Сообщений
    842
    Записей в дневнике
    1
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    USR это функция, которую можно прикрутить к любому оператору использующему числовые операнды. Например можно легко сделать BORDER USR XXXXX, или DIM A(USR XXXXX). Единственное, почему для вызова процедур в кодах используется RANDOMIZE - отсутствие влияния на выполняемую программу в бейсике, в то время, как все остальные операторы будут принимать за значение содержимое пары BC по выходу из процедуры. Если же выход из кодов не планируется, то можно вовсе намудрить что то вроде LIST USR или #OPEN USR.

  4. #144

    Регистрация
    29.12.2010
    Адрес
    Москва
    Сообщений
    1,869
    Спасибо Благодарностей отдано 
    142
    Спасибо Благодарностей получено 
    110
    Поблагодарили
    66 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Reobne Посмотреть сообщение
    Если разрешить в маш.коде вывод спрайтов - победит один участник, если разрешить вывод эллипса - другой, если 3D-box-а, то третий.
    ну в играх на басике процедура вывода спрайтов намного больше нужна, чем всё остальное. Вряд ли на кругах и эллипсах игра будет прикольной
    Так что можно, например, взять процедуру PTBL из книги "Как написать игру на ассемблере" и только ее разрешить использовать.

  5. #145

    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,198
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    103 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Splinter Посмотреть сообщение
    почему для вызова процедур в кодах используется RANDOMIZE - отсутствие влияния на выполняемую программу в бейсике
    Черта лысого! Команда RANDOMIZE n задает начало последовательности для оператора RND. Что в некоторых случаях делает ее и без того "не совсем случайной".

    Цитата Сообщение от Splinter Посмотреть сообщение
    Например можно легко сделать BORDER USR XXXXX
    Если на выходе из кодовой процедуры в ВС будет "лежать" значение, которое не переваривает оператор - получим остановку с выводом сообщения об ошибке.

    Если уж, так хочется, можно для этих целей использовать локальную переменную, значение, которой не критично на данном участке программы (к примеру, переменную "отработавшего" цикла): LET z= USR n

    ---------- Post added at 19:07 ---------- Previous post was at 19:04 ----------

    Пойду писать игру на бесике...
    Последний раз редактировалось null_device; 17.03.2014 в 15:22.
    Когда есть, но не знаешь где - это все равно, что нету.

  6. #146

    Регистрация
    12.02.2014
    Адрес
    г. Арзамас
    Сообщений
    6,123
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от null_device Посмотреть сообщение
    LET z= USR n
    или PRINT USR 0

  7. #147

    Регистрация
    26.09.2009
    Адрес
    г. Красноярск
    Сообщений
    3,198
    Спасибо Благодарностей отдано 
    40
    Спасибо Благодарностей получено 
    128
    Поблагодарили
    103 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от denpopov Посмотреть сообщение
    или PRINT USR 0
    PRINT USR n - "гадит" на экран. USR 0 - вообще приводит к одному, весьма интересному "документированному эффекту".
    Когда есть, но не знаешь где - это все равно, что нету.

  8. #148

    Регистрация
    01.03.2005
    Адрес
    Новосибирск
    Сообщений
    2,080
    Спасибо Благодарностей отдано 
    87
    Спасибо Благодарностей получено 
    480
    Поблагодарили
    145 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Предлагаю опрос клавиш повесить на прерывания, и из массива брать переменные состояния нажатий клавиш. Иначе перекрёстное нажатие клавиш не получится красиво реализовать.

    #00 - клавиша нажата
    #FF - клавиша не нажата.

    Вот, держите процедурку:

    Код:
    	ORG #8000
    
    KEYS_ISR:
    	PUSH HL
    	PUSH DE
    	PUSH BC
    	PUSH AF
            LD HL,KEY_MAP
            LD DE,KEY_MAP+1
            LD BC,40
            LD (HL),L
    	LDIR
            LD B,40
            LD HL,KEY_MAP
            LD DE,KEYTAB
    SCANLP  LD A,(DE)
            IN A,(#FE)
            INC DE
    	EX DE,HL
            AND (HL)
            EX DE,HL
            INC DE
            JR Z,$+4
            LD (HL),#FF
            INC HL
            DJNZ SCANLP
    	POP AF
    	POP BC
    	POP DE
    	POP HL
    	EI
    	RET
    
    KEYTAB	DB #FD,1        ;#14
    	DB #7F,16       ;#23
    	DB #FE,8        ;#21
    	DB #FD,4        ;#16
    	DB #FB,4        ;#0C
    	DB #FD,8        ;#17
    	DB #FD,16       ;#18
    	DB #BF,16       ;#19
    	DB #DF,4        ;#11
    	DB #BF,8        ;#1A
    	DB #BF,4        ;#1B
    	DB #BF,2        ;#1C
    	DB #7F,4        ;#25
    	DB #7F,8        ;#24
    	DB #DF,2        ;#12
    	DB #DF,1        ;#13
    	DB #FB,1        ;#0A
    	DB #FB,8        ;#0D
    	DB #FD,2        ;#15
    	DB #FB,16       ;#0E
    	DB #DF,8        ;#10
    	DB #FE,16       ;#22
    	DB #FB,2        ;#0B
    	DB #FE,4        ;#20
    	DB #DF,16       ;#0F
    	DB #FE,2        ;#1F
    	DB #EF,1	;#09
    	DB #F7,1	;#00
    	DB #F7,2        ;#01
    	DB #F7,4        ;#02
    	DB #F7,8        ;#03
    	DB #F7,16       ;#04
    	DB #EF,16       ;#05
    	DB #EF,8        ;#06
    	DB #EF,4        ;#07
    	DB #EF,2        ;#08
    	DB #7F,1        ;#27
    	DB #BF,1        ;#1D
    	DB #FE,1        ;#1E
    	DB #7F,2        ;#26
    
    	ORG #8100
    KEY_MAP:
    	DS 41,#00
    
    KEY_A	EQU KEY_MAP+#00
    KEY_B	EQU KEY_MAP+#01
    KEY_C	EQU KEY_MAP+#02
    KEY_D	EQU KEY_MAP+#03
    KEY_E	EQU KEY_MAP+#04
    KEY_F	EQU KEY_MAP+#05
    KEY_G	EQU KEY_MAP+#06
    KEY_H	EQU KEY_MAP+#07
    KEY_I	EQU KEY_MAP+#08
    KEY_J	EQU KEY_MAP+#09
    KEY_K	EQU KEY_MAP+#0A
    KEY_L	EQU KEY_MAP+#0B
    KEY_M	EQU KEY_MAP+#0C
    KEY_N	EQU KEY_MAP+#0D
    KEY_O	EQU KEY_MAP+#0E
    KEY_P	EQU KEY_MAP+#0F
    KEY_Q	EQU KEY_MAP+#10
    KEY_R	EQU KEY_MAP+#11
    KEY_S	EQU KEY_MAP+#12
    KEY_T	EQU KEY_MAP+#13	
    KEY_U   EQU KEY_MAP+#14
    KEY_V	EQU KEY_MAP+#15
    KEY_W   EQU KEY_MAP+#16
    KEY_X	EQU KEY_MAP+#17
    KEY_Y   EQU KEY_MAP+#18
    KEY_Z	EQU KEY_MAP+#19
    
    KEY_0	EQU KEY_MAP+#1A
    KEY_1	EQU KEY_MAP+#1B
    KEY_2	EQU KEY_MAP+#1C
    KEY_3	EQU KEY_MAP+#1D
    KEY_4	EQU KEY_MAP+#1E
    KEY_5	EQU KEY_MAP+#1F
    KEY_6	EQU KEY_MAP+#20
    KEY_7	EQU KEY_MAP+#21
    KEY_8	EQU KEY_MAP+#22
    KEY_9	EQU KEY_MAP+#23
    
    KEY_SPC	EQU KEY_MAP+#24
    KEY_ENT	EQU KEY_MAP+#25
    
    KEY_CS	EQU KEY_MAP+#26
    KEY_SS	EQU KEY_MAP+#27

  9. #149

    Регистрация
    12.02.2014
    Адрес
    г. Арзамас
    Сообщений
    6,123
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    3
    Поблагодарили
    3 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от null_device Посмотреть сообщение
    PRINT USR n - "гадит" на экран.
    ну это мало кому мешает, наверное. Но набирать быстрее.

  10. #150

    Регистрация
    29.08.2012
    Адрес
    Анапа
    Сообщений
    610
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от null_device Посмотреть сообщение
    Пойду писать игру на бесике...
    Написал за 5 минут, после обеда.

    Юзает команду SCROLL(от ZX81) в виде USR 3582. (кривой скроллер из ПЗУ, потому атрибуты и мерцают).
    Вложения Вложения
    • Тип файла: zip hz.zip (1.4 Кб, Просмотров: 91)
    Последний раз редактировалось Бука; 17.03.2014 в 16:21.
    «Земля - слишком маленькая и хрупкая корзина, для того чтобы человечество держало в ней все свои яйца…» - Роберт Энсон Хайнлайн.
    Электроника МК-61, Psion series 5mx.

    Всем умеющим читать советую http://www.skeptik.net/conspir/moonhoax.htm http://lurkmore.to/Лунный_заговор

Страница 15 из 37 ПерваяПервая ... 111213141516171819 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Графика в Бейсике на УКНЦ
    от nzeemin в разделе ДВК, УКНЦ
    Ответов: 45
    Последнее: 19.04.2022, 22:30
  2. Демо на бейсике
    от Viktor2312 в разделе Программирование
    Ответов: 134
    Последнее: 09.07.2014, 01:34
  3. Небольшие программки на Бейсике.
    от new в разделе Для начинающих
    Ответов: 11
    Последнее: 17.07.2010, 15:45
  4. Спрайты в бейсике
    от AER в разделе Для начинающих
    Ответов: 13
    Последнее: 28.03.2010, 11:50
  5. моя игра на бейсике
    от женя999 в разделе Игры
    Ответов: 44
    Последнее: 10.02.2010, 16:02

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •