так вот про то и речь, а говорят, что попадает в 0 страницу.
конечно, фиг знает, может ли это где помешать...
Вид для печати
ИМХО как раз тот случай, когда не баг, а фича =)
помешать вряд ли, потому что вроде как компиляция в ПЗУ при желании сохранить только снапшот выглядит странной...:confused:
Но чисто теоретически вот такое:
дает неожиданный результат ( вместо "abcd" имеем "test" в нулевой банке ).Код:device zxspectrum128
main
org 0xc000
page 0
db "abcd"
org 0
db "test"
savesna "test.sna", main
С директивой page все ок. Вот тока "test", который компилится позже, затирает "abcd".
Вот более показательный пример:
Код:device zxspectrum128
main
org 0xc000
page 0
db "abcd"
abcdLen equ $ - 0xc000
page 1 // does not matter
org abcdLen
db "test"
savesna "test.sna", main
В компиляторе с 0х0000 по 0x3FFF находится по умолчанию 0-ая страница. Или нужно было там разместить дамп ПЗУ? Не вижу смысла, ведь режим ZXSPECTRUM128 и прочие созданы только для упрощения разработки программ для спектрума. Компилятор не эмулирует спектрум ;)
Страницу с 0х0000 по 0x3FFF можно изменить следующим образом:В снапшот формата SNA, ПЗУ сохранить нельзя.Код:SLOT 0
PAGE страница
SLOT 3 ; по умолчанию - пространство с 0xC000 по 0xFFFF.
Теперь понятно зачем это. Руль!:)
SAVETAP нужен однозначно. Сэкономит кучу времени.
Только вот фиксированного загрузчика кодов не надо. Иначе смысл какой делать?
Тогда уж и на savetrd такой-же загрузчик прикручивать надо
идею поддерживаю, только надо бы иметь возможность записывать тап без заголовка