o_O ну ты знаешь я тоже только что компилировал прежде чем что-то написать, вот только разница в том ;) что у меня сорцы то полные а не часть, но думаю скорее всего у меня удачное стечение байтов :)
Вид для печати
У меня тоже не работает. У тебя работает скорее всего потому, что бут у тебя запускает басики не "LOAD "name"", а "RUN "name""
boo_boo прав, именно в этом и проблема - вручную я могу проставить автостарт, а средствами сьясма - хрен. В итоге занимаюсь извращениями в стиле - сначала отассемблировали и записали на диск с автостартом в теле программы, потом всё удалили, убрали автостарт из тела и опять записали. Поскольку сьясм трдшки не чистит, получается как бы с автостартом.
Ну короче мировые флуктуации космоса мы не учитываем. Вопрос открыт.
билд-скрипт проще написать, чем код чужого немаленького проекта править. другое дело, что доработка сжасма общественно-полезное дело, а написание билд-скрипта нет..
(мне, правда, не очень понятно, за что народ любит совмещать билдинг и кодинг в одном ассемблерном файле, но любит, эт факт.)
приделал к сжасму версии 1.07 RC7 запись в трд с автостартом, во вложении измененные файлы.
как работает: в SAVETRD к старту и длине добавил необязательный параметр -- номер строки автостарта. если оно есть, то к концу файла дописываюца заветные 4 байта, длина файла в байтах остается прежней, длина в секторах при надобности увеличиваеца. тип файла пофиг. пример на основе кода breeze:
ЗЫ LUA-интерфейс не менял, бо ломает разбираться с toloa, просто отключил там доп. параметрКод:DEVICE ZXSPECTRUM128
EMPTYTRD "test.trd"
org #4000
DISP 23867
Basic db #00,#01 ; basic number string [#00,#01]
dw EndBasic-Begin ; size of basic string
Begin db #FD ; "CLEAR" token
db #30 ; "0" fake numeber
db #0e,#00,#00
dw #5fff ; real stack (CLEAR) [#5fb3]
db #00
db #3a ; ":"
db #f9 ; "RANDOMIZE" token
db #c0 ; "USR" token
db #30 ; "0"
db #0e,#00,#00
dw #0000 ; сброс!
db #00
db #3a ; ":"
db #ea ; "REM" token
db "FUCK"
db #D
EndBasic
ENT
SAVETRD "test.trd","boot.B",16384,EndBasic-Basic,1