Просмотр полной версии : Руссифицированный бейсик
Существует ли сабж в природе? Без разницы какой 48/128/Beta/Mega... Ну очень хочется юзерфрендли бейсик с русскими буковками.
Пробую сейчас руссифицировать BetaBasic 1.8, по статье в Радиолюбителе 03-1994 (https://yadi.sk/d/nIwZvIQKqpsKN) (стр.16), но знаний не хватает. Вроде все делаю как надо, но в итоге кракозябры вместо букофф. Подозрение что в листинге программы на асме где то ошибка.
ORG 55670
MESS LD A,0
RST #10
JP #EE0C
ORG MESS+8
BEGIN CP 128
JR NC,WORD
CP 2
JR C,CONTR
CHR_ BIT 0,(IY+02)
JR Z,SCREEN
LD HL,(CHANK)
PRINT LD (23606),HL
CONTIN CALL #0B03
CP 2
CALL C,LDADD
JR C,CONTR
JP #FBAA
SCREEN LD HL,(CHANS)
JR PRINT
CONTR LD HL,CHANS
BIT 0,(IY+02)
JR Z,ALTER
INC HL
INC HL
ALTER OR A
JR Z,ORDIN
LD DE,RUSS
LDO LD (HL),E
INC HL
LD (HL),D
RET
ORDIN LD DE,LAT
JR LDO
WORD LD HL,15360
LD (23606),HL
CP #A8
JR Z,FN_
LD HL,CONTIN
LD (#FBA8),HL
CALL #FBAA
LDADD LD HL,BEGIN
LD (#FBA8),HL
RET
FN_ LD HL,WAIT
LD (#FBA8),HL
JR CONTIN
WAIT CP "A"
JR NC,CONTIN
LD HL,BEGIN
LD (#FBA8),HL
JP (HL)
CHANS DEFW 15360
CHANK DEFW 15360
RUSS EQU 54901-256
LAT EQU 15360
Прошу помощи у кодеров:)
TRD (https://yadi.sk/d/mwM-esfPqpsKF) с моими мучениями. Загружаем BBR.B, RUN, RANDOMIZE USR 58419.
Существует ли сабж в природе?
http://zxpress.ru/book_articles.php?id=894
Вроде как самый "крутой" способ.
Т.е. одновременно и русские и латинские буквы можно. (там картинки внизу как будет выглядеть бейсик)
Скачай книгу (на сайте всё в таблицы превратилось) и вбивай прогу.
http://zxpress.ru/book_articles.php?id=894
Вроде как самый "крутой" способ.
Т.е. одновременно и русские и латинские буквы можно. (там картинки внизу как будет выглядеть бейсик)
Скачай книгу (на сайте всё в таблицы превратилось) и вбивай прогу.
Да, мельком просмотрел уже. Но у программы в журнале строк поменьше, а по крутизне одинаковая. Автор тоже обещает одновременно и русские и английские символы.
Подозрение что в листинге программы на асме где то ошибка.
скорее асм криво скомпилировал этот листинг.
скорее асм криво скомпилировал этот листинг.
Так бывает? Гуанокод? Гуаноасм?
- - - Добавлено - - -
да, в журнале опечатка, и в BBR.B тоже: в таблице poke надо 58441, а не 8441 скорей всего. Но мне это все равно не помогло.
откуда я знаю в каком асме набрана прога ?
(и как он переваривает два org`a)
в-твоём случае явно пропущен начальный кусок.
как вариант набери бейсикпрограмму с hex`ом
Разбил программу на два куска, каждый код положил по своему адресу. Уже лучше, кракозябры пропали. Однакож шрифты как обещано по true/inv video не переключаются. Иногда переключаются если backspace нажимать. Мдя, бум дальше курить.
- - - Добавлено - - -
А, все работает! Просто переключение в два этапа. Благодарю Goodboy, за наводку. Осталось шрифты только подобрать, хочу йцукен сделать.
denpopov
08.04.2016, 19:52
скорее асм криво скомпилировал этот листинг.
тем более, что неясно, что такое ORG MESS+8
Den1982, скриншот покажи что ли..
BetaBasic 1.8
Пробный шрифт, со странной раскладкой ЧВЕРТЯ
Переключения: ЛАТ - TRUE VIDEO потом DELETE; РУС - INV VIDEO потом DELETE.
Надо бы найти/нарисовать ЙЦУКЕН шрифт под мою клаву на ZXEVO. Однакож внезапно обнаружилась проблемка - BB1.8 не умеет в TR-DOS из-за своего режима прерываний. Рецепт для версии 3.0 (http://www.zxpress.ru/article.php?id=4071) не подходит (кто бы сомневался). Кто виноват и что делать?
- - - Добавлено - - -
На vtrdos.ru лежит trdos версия bb1.8 Но она тоже какая-то глючная и никак не сохраняет файлы на диск. Неужели никто не адаптировал его под tr-dos?
Kalantaj
09.04.2016, 08:11
Дык в ROBIK'е изначально была поодержка русского языка в ПЗУ. Правда из-за этого часть игр не работала - сказывались изменения, внесенные в оригинальное ПЗУ.
Дык в ROBIK'е изначально была поодержка русского языка в ПЗУ. Правда из-за этого часть игр не работала - сказывались изменения, внесенные в оригинальное ПЗУ.
Что делать, если нет РОБИКА, а русский бейсик охота?
Рецепт для версии 3.0 не подходит (кто бы сомневался). Кто виноват и что делать?
делать randomize usr 59912 для отключения часов на im2
а вообще тащить с-собой BetaBasic только ради использования русских букв сомнительная затея,
точно были самостоятельные русификаторы с использованием двух полноценных алфавитов.
http://zxpress.ru/book_articles.php?id=894
В ZX-ФОРУМ №1 (http://trd.speccy.cz/book/ZXFORUM1.ZIP) статья "Расширение функций оператора PRINT".
Возможности:
- переключение на русский и английский FONT'ы;
- печать шрифтом высотой 8 и шириной от 3 до 7 пикселов;
- печать шрифтом высотой 16 и шириной 8 пикселов;
- печать 2-х типов меню с тенью или без неё;
- печать собственных или системных токенов ключевых слов.
Подпрограмма, выдающая номер выбранной опции из меню.
Подпрограмма, похожая на ПЗУ-шную 203CH, только требующая для своей работы в регистре A - номер печатаемого стринга и в ОЗУ - таблицу начальных адресов этих стрингов.
AndTorp, ну потому и показалось что громоздко.
Хотя,конечно, тоже круто, да.
(всегда фапал на системное программирование, но не срослось, дурак я, ламер...)
Barmaley_m
11.04.2016, 00:14
В "Орель БК-08" тоже был русифицированный заводской бейсик. В придачу шла расширенная клавиатура, на которой помещались русские буквы, специальная клавиша "РУС/ЛАТ" и другие. Все сообщения бейсика об ошибках были переведены на русский, кроме того, при загрузке вместо "Program:", "Bytes:", "Number array:", "Character array:" выводились сообщения "Программа", "Байты", "Массив чисел", "Массив символов" соответственно.
Скажу сразу, что ничего хорошего из этого не вышло. Ну разве что разработчики в отчете себе плюсики поставили и премии получили. От русских сообщений толку никакого. Писать программы с русскими надписями в бейсике было возможно, но такие программы корректно работали только на "Орелях". А из-за того, что бейсик был сильно перепахан, потерялась совместимость со многими играми. Хоть я и был, наверно, одним из немногих, кто на практике воспользовался русификацией бейсика - писал маленькие свои программки с русским текстом - но даже мне в конце концов это не понравилось, и впоследствии я применял прошивки без русификации. Тем же, кто на "Орелях" только играл, пользы от русификации было еще меньше, а был один лишь вред из-за потери совместимости.
Так что не советую.
Ну а чтобы "попробовать" - то здесь (http://zx-pk.ru/attachment.php?attachmentid=48374&d=1402509778) есть эмулятор Unreal с поддержкой орелевской клавиатуры. В темах про "Орель БК-08" где-то пробегала и заводская прошивка бейсика. Также в интернете можно скачать заводские инструкции к компьютеру и бейсику, где работа с орелевской клавиатурой описана подробно.
Всем спасибо за ссылки/советы. Однако все-таки первоначальный вариант является оптимальным для моей задачи. Задача была в том, чтобы получить бейсик с возможностью переключения раскладок в листинге/строке редактирования/строке ввода при выполнении самой программы. Причем и листинг и строка редактирования тоже должны были отображаться корректно. Далее, нужна была раскладка ЙЦУКЕН для комфортной работы на pc-шной клаве, в связи с этим пришлось пожертвовать строчными буквами. В общем, это практически все удалось, есть только два неприятных момента:
1. Клавиша с буквой Э на PC-клаве обычно маппится на кавычки, и будут проблемы при ее использовании, поэтому в программе она замаппена на апостроф.
2. Если при вводе строки переключать только один раз раскладку, то строка будет отображаться некорректно(используя только один из шрифтов).
Первая фича решается переназначением клавиш в эмуле/прошивкой zx-evo (если есть:))
Вторую можно решить программно, но мне не хватает мозгов. Думаю проблема решится автоматической вставкой кода лат.раскладки(0) после токена например.
Для чего мне нужны все эти извращения? Есть zx-evo, есть книга по программированию на бейсике для детей, есть сами дети:) Последнее слагаемое, чтобы попытатся заинтересовать детей - бейсик с комфортной работой с русским шрифтом. Если кому вдруг интересно - trd в атаче.
чтобы попытатся заинтересовать детей - бейсик с комфортной работой с русским шрифтом
Den1982, интерфейсы бейсиков для ZX Spectrum'а не являются особенно дружественными. Может имеет смысл заняться с детьми не выводами строчно-текстовой информации, а какими-нибудь графическими эффектами - построение простейших геометрических фигур, их заливка и т.п.
Для этих целей может подойти система PRO-DOS (описана в книге "Диалекты Бейсика для ZX-Spectrum" - Питер'92).
Ух ты.. а я просто шрифт переключал на русский и получал БАСИЦ ))) Ну вы поняли - все буквы латиницы заменялись на кириллицу.. Местами весьма ржачно было )
Powered by vBulletin® Version 4.2.5 Copyright © 2026 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot