Важная информация

User Tag List

Показано с 1 по 5 из 5

Тема: Добавление нового пункта в меню прошивки "BASIC-128"

  1. #1
    Master Аватар для Prusak
    Регистрация
    28.02.2005
    Адрес
    г.Минск
    Сообщений
    643
    Спасибо Благодарностей отдано 
    23
    Спасибо Благодарностей получено 
    19
    Поблагодарили
    15 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Добавление нового пункта в меню прошивки "BASIC-128"

    Подскажите, кто знает, как можно ввести новый пункт в меню в прошивке BASIC-128 наподобие "HDD boot"? Т.е. как организовать этот новый пункт - расширить меню и т.п.?
    Заяц-прусак
    zxbyte.ru- компьютер Байт и прочий хлам

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2
    Moderator Аватар для Максагор
    Регистрация
    16.01.2005
    Адрес
    Москва
    Сообщений
    1,981
    Спасибо Благодарностей отдано 
    207
    Спасибо Благодарностей получено 
    303
    Поблагодарили
    113 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Prusak Посмотреть сообщение
    Подскажите, кто знает, как можно ввести новый пункт в меню в прошивке BASIC-128 наподобие "HDD boot"? Т.е. как организовать этот новый пункт - расширить меню и т.п.?
    Когда-то давно я в HEX-вьювере смотрел ПЗУ басица-128. Там на все открывающиеся менюшки есть таблички, в которых содержится информация - сколько опций в меню, ссылки (кажется) на надписи для опций (надписи формируются по принципу ASCIIZ - последний символ увеличен на +#80) и адрес подпрограмм, куда надо переходить при выборе опции. Все это, естественно, легко меняется на свое. Единственное, если надо не меняя существующие опции добавить сверх них дополнительную, то это надо "раздвигать" байты для впечатывания новый данных в расширяемую таблицу, что весьма и весьма проблематично. А вот замена одной опции на функционально другую путем подстановки своей ссылки на подпрограмму пользователя и вбития новой надписи в опцию, или сокращение числа опций в меню просто путем уменьшения значения в байте, отвечающем за число опций, проблем не составляет.

    ЗЫ: сейчас я уже не помню, где конкретно располагаются таблички. И тетрадные листочки, где я все это пару лет назад записывал, не найду, тем более, что я сейчас с работы пишу. Но нашел я все это сам без специальных знаний и инструкций, исключительно HEX-эдитором... Так что, думаю, тебе тоже сложно не будет....
    Последний раз редактировалось Максагор; 09.03.2011 в 12:52.
    Максагор, NedoPC group
    ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
    [ZX rulezzz 4reva!!!]
    http://atmturbo.nedopc.com
    http://vk.com/atmturbo
    http://maksagor.livejournal.com
    http://moskprf.ru
    [СССР][Коммунизм][КПРФ] ну [ZX], естественно...

  4. #3
    Vitamin C++ Аватар для Vitamin
    Регистрация
    14.01.2005
    Адрес
    Таганрог, Россия
    Сообщений
    4,254
    Спасибо Благодарностей отдано 
    9
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    34 сообщений
    Mentioned
    7 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Максагор Посмотреть сообщение
    надписи формируются по принципу ASCIIZ - последний символ увеличен на +#80
    Прошу прощения за занудность, но это не принцип ASCIIZ.

  5. #4
    Moderator Аватар для Максагор
    Регистрация
    16.01.2005
    Адрес
    Москва
    Сообщений
    1,981
    Спасибо Благодарностей отдано 
    207
    Спасибо Благодарностей получено 
    303
    Поблагодарили
    113 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Vitamin Посмотреть сообщение
    Прошу прощения за занудность, но это не принцип ASCIIZ.
    Ну и хрен с ним.

    На самом деле я точно и не помню +#80 там, или символ инвертированный, или, как в "классическом ASCIIZ - нолик в конце... Просто где-то так примерно....
    Максагор, NedoPC group
    ПК ATM-turbo 2+ 1024Kb RAM, 1,7Gb HDD, CD-ROM, Turbo FM, GS-512
    [ZX rulezzz 4reva!!!]
    http://atmturbo.nedopc.com
    http://vk.com/atmturbo
    http://maksagor.livejournal.com
    http://moskprf.ru
    [СССР][Коммунизм][КПРФ] ну [ZX], естественно...

  6. #5
    Guru Аватар для caro
    Регистрация
    14.01.2005
    Адрес
    Ekaterinburg
    Сообщений
    2,721
    Спасибо Благодарностей отдано 
    16
    Спасибо Благодарностей получено 
    134
    Поблагодарили
    87 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Код:
    ;----------------------------------------------------
    L2744:	DB	5		;ЧИСЛО АДРЕСОВ ВЫЗОВА
    	DB	00H
    	DW	L2831		;Tape Loader
    	DB	01H
    	DW	L286C		;128 BASIC
    	DB	02H
    	DW	L2885		;Calculator
    	DB	03H
    	DW	L1B47		;48 BASIC
    	DB	04H
    	DW	L2816		;Tape Tester
    ;------------------------------------------------
    L2754:	DB	6		;ДЛИНА ТАБЛИЦЫ
    	DB	'128     ',0FFH
    L275E:	DB	'Tape Loade','r'+80H
    L2769:	DB	'128 BASI','C'+80H
    L2772:	DB	'Calculato','r'+80H
    	DB	'48 BASI','C'+80H
    L2784:	DB	'Tape Teste','r'+80H
    	DB	' '+80H
    ;------------------------------------------------

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

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

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

Похожие темы

  1. Компьютер "ZXM-Phoenix" - Прошивки ПЗУ
    от Keeper в разделе Phoenix
    Ответов: 64
    Последнее: 25.10.2017, 11:02
  2. Ответов: 0
    Последнее: 15.08.2010, 14:38
  3. Ответов: 6
    Последнее: 20.11.2007, 11:29
  4. "длина программной части" BASIC
    от boo_boo в разделе Программирование
    Ответов: 10
    Последнее: 12.10.2007, 16:39
  5. "длина программной части" BASIC
    от boo_boo в разделе Разный софт
    Ответов: 5
    Последнее: 05.10.2007, 21:36

Ваши права

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