Если еще актуально, вечером могу набросать вариант. Рекордов скорости или размера не обещаю, но по крайней мере в эмуляторах работать будет.
Если еще актуально, вечером могу набросать вариант. Рекордов скорости или размера не обещаю, но по крайней мере в эмуляторах работать будет.
если я правильно понял то вот относительно понятный кусок кода для вывода картинки
http://map.grauw.nl/resources/msxbios.php
Код:CALL #0041 DI LD HL,#891C LD DE,#0000 LD BC,#1800 CALL #005C DI LD HL,#A11C LD DE,#2000 LD BC,#1800 CALL #005C CALL #0044 EI RET
вот кстати хорошее пособие по программированию
https://www.chibiakumas.com/z80/msx.php
Последний раз редактировалось goodboy; 25.10.2021 в 14:23.
Всем спасибо за ссылки и код! Это реально очень полезная информация для меня!
На выходных не до компьютера было, поэтому особо ничего не смотрел.
А вообще начал изучать исходники Yazzie для MSX Дениса Грачёва. Взял оттуда инициализацию компьютера и вывод на экран заставки. Собственно у меня сейчас есть готовый шаблон программы, который собирается, запускается и выводит картинку на экран. Вот это я сейчас и изучаю, подглядывая в документацию. Думаю, что скоро и заставку Exolon'a смогу вывести на экран MSX
С уважением, Станислав.
А потом думаешь взяться за порт PoP на MSX ?
Примерно так же выводится картинка и в Yazzie.
Пояснения подпрограмм:
Первым блоком переносятся пиксели (6144 байта), а вторым их цвета (6144 байта). В Yazzie заставка хранится запакованной методом RLE и эти два блока на лету распаковываются и записываются прямой записью в порт #98, а не функцией BIOS, как в примере. Но, перед этим ещё идёт включение нужного режима экрана.Код:DISSCR=$0041 // Function: Disable Screen Display // Input: NONE // Output: NONE // Registers: AF, BC // Available: MSX LDIRVM=$005C // Function: Block Transfer From Memory To VRAM // Input: HL = Memory Source Address, DE = VRAM Destination Address, BC = Data Length // All Bits Of VRAM Address Are Valid // Output: NONE // Registers: ALL // Available: MSX =Do Not Call SUB-ROM While Screen Modes 4..8 Are Changed ENASCR=$0044 // Function: Enable Screen Display // Input: NONE // Output: NONE // Registers: ALL // Available: MSX
С уважением, Станислав.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Пока не могу понять как задать свою палитру, чтобы сделать её похожей на Спектрум. Или это нельзя сделать?
С уважением, Станислав.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)