С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Скрытый текст
Profi 4.02 512k
Profi 5.04 1024k нижняя плата здесь
Scorpion 256k+ProfROM+SMUC 1.3+SMUC 2.0+ZXMC2
Pentagon v2.2+Z-controller+ZXMC2+NeoGS
АТМ 7.10 1024k
Pentagon 2.666LE
ZX Evolution 4Mb rev B[свернуть]
Извещение лички отключено, захожу редко.
Как предоставил по первой ссылке breeze, в комплекте с SjASMPlus для Windows имеется директория Examples, которая в примере для Worm255 содержит вариант для создания Basic-загрузчика.
Чтобы позже сделать из этого моноблок - загрузи в Real Commander и склей файлы. Или релизы выходят настолько часто, что необходима автоматическая склейка?
ATW4GS / BIN2SNA / SquareMania <ТИ-3> / Ужасм+
ATM-Turbo 512 v4.50,
Commodore 64G + TAC-2, Retro-Bit Super Retro TRIO
Скрытый текст
Profi 4.02 512k
Profi 5.04 1024k нижняя плата здесь
Scorpion 256k+ProfROM+SMUC 1.3+SMUC 2.0+ZXMC2
Pentagon v2.2+Z-controller+ZXMC2+NeoGS
АТМ 7.10 1024k
Pentagon 2.666LE
ZX Evolution 4Mb rev B[свернуть]
Извещение лички отключено, захожу редко.
Ну я думаю достаточно хотя бы сделать посекторную запись например во вновь созданный трд образ. Или еще как вариант возможность создания бейсик файла в соответствии с его форматом и заданным размером в секторах для создания моноблока и посекторным доступом к образу. Ну или как то так.
Скрытый текст
Profi 4.02 512k
Profi 5.04 1024k нижняя плата здесь
Scorpion 256k+ProfROM+SMUC 1.3+SMUC 2.0+ZXMC2
Pentagon v2.2+Z-controller+ZXMC2+NeoGS
АТМ 7.10 1024k
Pentagon 2.666LE
ZX Evolution 4Mb rev B[свернуть]
Извещение лички отключено, захожу редко.
я думаю для счастья нужно только это:
1. запись блока данных в TAP в настраиваемом формате (можно сделать что заголовок формировать блоком DB, так будет гибче).
2. запись в TRD файла с произвольным заголовком (т.е. чтобы указывался тип файла, старт и длина (они могут отличаться от реальных!!!))
все это можно сделать даже внешней утилитой (нет такой? надо чтобы кто-нить сделал). и так же внешней утилитой склеивать файлы в TRD.
вопрос в том, надо ли все это реализовывать именно в ассемблере? я не уверен.
Незнаю бага или фича.
Вот кусок
вызывается такКод:MACRO DBG stat ld a,stat ; !!!! out (0xFF),a ENDM MACRO TESTMEM addr ld hl, addr ld a, ((addr >> 12) & 0x0F) | (((addr >> 8)^0xFF) & 0xF0) ld (hl), a nop ld a, (hl) DBG a ; !!!!! ENDM
результат выглядит такКод:TESTMEM 0x0000 TESTMEM 0x4000 TESTMEM 0x8000 TESTMEM 0xC000
Как по мне можно имеет смысле викидывать 0078 7F то есть при развороте макроса DBG a, получилась инструкция ld a,aКод:58 0070 TESTMEM 0x0000 58 0070 21 00 00 > ld hl, addr 58 0073 3E F0 > ld a, ((addr >> 12) & 0x0F) | (((addr >> 8)^0xFF) & 0xF0) 58 0075 77 > ld (hl), a 58 0076 00 > nop 58 0077 7E > ld a, (hl) 58 0078 7F > ld a,stat ;!!!! 58 0079 D3 FF > out (0xFF),a
Я про этап разворота макроса...
Как вариант можно добавить возможность проверить что было передано в параметре макроса пусть даже в виде строки
багофича будет тогда, когда асм самовольно станет что-то оптимизировать.. а если я специально сделал такой макрос?
так что все ок.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)