Формат записи программы Апогея БК-01 на магнитофон
Всем привет. Что-то нашло на меня, и я, полный сил и уверенности в себе, решил разобраться с апогеем. Первым делом возник вопрос с эмулятором. Мне посоветовали Emu80, в котором находятся аж сразу несколько эмуляторов советских ПЭВМ — Апогей БК-01, Партнер, ЮТ-88, Радио-86РК, Микроша и другие.
После первого запуска апогея я запустил демку моего друга Kakos_nonos — «This Is Apogey 2». Файл успешно считался при помощи использования команды «I», но Какос не любит считать контрольные суммы, поэтому после её проверки появился вопросик. Само видео запуска вы можете лицезреть ниже.
Но это ещё далеко не всё!
Я решил разобрать структуру .RKA файла, из которого происходит чтение командой «I».
Всё оказалось намного проще всем знакомого .trd-шника, а именно:
Для сборки файла можно использовать онлайн компилятор — просто вставьте код программы и нажмите "Build project". :)
В самом начале файла идут два байта, содержащие начальный адрес программы, а после них ещё два байта, которые содержат уже конечный адрес нашей программы:
Далее идёт код. Я уже успел написать программу, которая выводит «WCT ONE LOVE» на экран. Вот она:
Далее идёт объявление о конце программы и «синхробайт»:
Ну а потом идёт контрольная сумма, которая равна двум байтам и может быть любой (влияет только на появление вопросика после считывания программы из файла).
После долгожданного запуска программы мы можем увидеть, как апогей вывел наш текст на дисплей:
Все довольны, аплодисменты, занавес.
В скором времени я напишу ещё одну статью про Апогей БК-01, а пока — Спасибо за внимание, до скорой встречи, до свидания :)
--
Приложение.
Таблица — http://wctsite.tk/table/apogee.
Онлайн компилятор — http://build.wctsite.tk.
Спасибо Kakos_nonos за инструктаж по апогею :)
После первого запуска апогея я запустил демку моего друга Kakos_nonos — «This Is Apogey 2». Файл успешно считался при помощи использования команды «I», но Какос не любит считать контрольные суммы, поэтому после её проверки появился вопросик. Само видео запуска вы можете лицезреть ниже.
Но это ещё далеко не всё!
Я решил разобрать структуру .RKA файла, из которого происходит чтение командой «I».
Всё оказалось намного проще всем знакомого .trd-шника, а именно:
Ахтунг! Разбирать я все буду на Wct, потому что я уже привык.
Таблицу команд для Апогея БК-01 вы можете найти здесь.
Я вас предупредил.
Для сборки файла можно использовать онлайн компилятор — просто вставьте код программы и нажмите "Build project". :)
В самом начале файла идут два байта, содержащие начальный адрес программы, а после них ещё два байта, которые содержат уже конечный адрес нашей программы:
Aa AA // Начальный адрес
Aa BC // Конечный адрес
Далее идёт код. Я уже успел написать программу, которая выводит «WCT ONE LOVE» на экран. Вот она:
Cb AH AA // Помещение адреса строки в HL
Mn BI OI // Вызов функции печати строки из HL,
// полный список функций можно найти в таблице (см. приложение)
Hg // Завершение работы программы (halt), также имеется в таблице
"WCT" Ca "ONE" Ca "LOVE" Aa // Сам текст, где "Ca" = пробел,
// "Aa" - завершение строки
Далее идёт объявление о конце программы и «синхробайт»:
Aa aa // Конец программы (нули)
Pg // Синхробайт (ага, тот самый)
Ну а потом идёт контрольная сумма, которая равна двум байтам и может быть любой (влияет только на появление вопросика после считывания программы из файла).
После долгожданного запуска программы мы можем увидеть, как апогей вывел наш текст на дисплей:
Все довольны, аплодисменты, занавес.
В скором времени я напишу ещё одну статью про Апогей БК-01, а пока — Спасибо за внимание, до скорой встречи, до свидания :)
--
Приложение.
Таблица — http://wctsite.tk/table/apogee.
Онлайн компилятор — http://build.wctsite.tk.
Спасибо Kakos_nonos за инструктаж по апогею :)
13 комментариев
Как её считать? Очень просто! Вот, процедурка для i8080
Неужели не понятно?!
Хм… oк, тогда для i8086
— — — Если серьёзно, то присоединюсь к introspec-у и заминусую пост потому_что_он_про_Wct
Чувствую себя супер-кодером на Wct, ни одной ошибки не допускаю. =)
Таблицу команд для Апогея БК-01 вы можете найти здесь.
Я вас предупредил.»
Успешная компиляция, можно скачать бинарник.
супер!
Это одна из причин, по которой я минусую и буду продолжать минусовать посты про Wct.
call #f818
halt
нафиг это «транслировать» в Cb AH AA Mn BI OIHg
Обе с приколом, но!
Пришел студент экзамен по биологии сдавать, а знает только один билет — про блох. Ну зашел он в аудиторию, взял билет, читает — «блохи» (УЕS!).
Он начинает:
— Блохи — насекомые, которые живут в шерсти животных, имеют длинный, острый хоботок, которым протыкают кожу и пьют кровь. Блохи имеют длинные ноги, за счет которых хорошо прыгают…
Ему зачли билет, сказали взять другой. Берет — «собаки». Он начинает:
— Собаки — животные разряда млекопитающих, они имеют 4 лапы и хвост, которые покрыты шерстью. А в шерсти наверняка живут блохи, а блохи — это…
Экзаменаторы подумали, заставляют еще один билет брать… Он берет — «кошки». Студент опять:
— Кошки — это животные, которые имеют 4 ноги, длинные усы и хвост. Также имеется волосяной покров, в котором наверняка есть блохи, а блохи — это…
Экзаменаторы в дауне… Самый главный не растерялся и говорит:
— Юноша, а что вы можете сказать нам про рыб?
Студент:
— Рыбы — это животные, тело которых покрыто чешуей. Ну а если бы они имели шерсть, то там точно водились бы блохи. А блохи — это…