Speccy - наш выбор!

Speccy - наш выбор! (http://zx-pk.ru/index.php)
-   Программирование (http://zx-pk.ru/forumdisplay.php?f=14)
-   -   Помощь по ALASM (http://zx-pk.ru/showthread.php?t=9844)

Zloy 29th March 2009 19:13

Помощь по ALASM
 
1 Attachment(s)
Помогите плз разобраться как откомпилировать "инсталятор" TR-DOS в ALASM... Уже пол дня мучаюсь, как откомпилировать вроде понял, как сохранить - понял что через sts (не знаю как).
Откомпилировать хочу инсталятор TRD530A отсюда (исходник GLUK):
http://alonecoder.narod.ru/zx/GLUK63SR.rar

Кое что упоминается сдесь:
http://zx.pk.ru/showpost.php?p=88675&postcount=68

Помогите пожалуйста, я в асме на спеке - 0. Хочу собрать "свой" TR-DOS с поддержкой RAM-диска Profi 512К, а то везде все прошивки расчитаны на 1M. Инсталятор позволяет это сделать, с этим сам разберусь... помогите разобраться как получить заветные 16К прошивки из исходников.
Инсталятор требует tr-dos 5.04 - в приложении.
Да, если есть у кого хелп по ALASM, поделитесь...

VNN_KCS 29th March 2009 19:27

Не совсем понял "откомпилировать". Может ты имел ввиду "декомпилировать"?
Компилируют обычно исходники в реальный код. Уточни конкретней - что нужно сделать.

Zloy 29th March 2009 19:39

Да... откомпилировать исходники, кот. переделывают версию tr-dos 5.04 в версию tr-dos с ram-disk. Исходники при компиляции требуют естественно оигинальню прошивку tr-dos 5.04

VNN_KCS 29th March 2009 19:54

Я не успел залезть по ссылке, но если там исходники в Аласм-е, то у тебя вероятно возник вопрос: как их откомпилировать по адресу #0000?
А вот насчет прошивки не прдскажу. Надо искать. У меня на последнем реале была 5.04f. Поддерживала 1024к и соотв. ram-disk. Поищи может найдёшь. Был бы мой живой щас бы скинул. Пороюсь в своих эмулях - может найду
А если проблема с компиляцией в ноль - то в Аласме это решается так:
org #6000; или любой удобный
disp #0000
И всё. Откомпилит в #6000, а все переходы и call будут как с нуля.

VNN_KCS 29th March 2009 20:38

1 Attachment(s)
Zloy вот архив, в нём Аласм и help к нему. Грузи Аласм, а потом кнопкой W первый файл. Это и есть хэлп.

Zloy 29th March 2009 20:39

С TR-DOS вожусь только из-за желания запустить RAM-диск на 512 кб ОЗУ моего Профи, такой прошивки не встречал... хотя уверен что она была.
Я так понял, что исходник, кот я компилю... только патчит TR_DOS 5.04, так что с какого адреса ему пофиг (наверное).
Я тупо не могу сохранить результат... Как это сделать?

VNN_KCS 29th March 2009 20:53

Я конретно еще не смотрел, только 48rom. Но! Компилит в озу. Смотри 1-й org. Туда быстрее всего и компилит. А вообще сначала выйди в sts обнули всё возможное пространство озу, вернись в аласм, откомпилируй. Затем снова в стс и смотри гдечего. Потом прям из стс выгрузи. Сейчас и я попробую. Надеюсь там всё необходимое есть. А ещё в Аласме есть исходник saveobj. Я им не пользовался, но по моему с его помощью можно откомпилить исходник и выгрузить результат на диск в коде.

Kurles 29th March 2009 20:57

Quote:

Originally Posted by Zloy (Post 191908)
С TR-DOS вожусь только из-за желания запустить RAM-диск на 512 кб ОЗУ моего Профи, такой прошивки не встречал... хотя уверен что она была.
Я так понял, что исходник, кот я компилю... только патчит TR_DOS 5.04, так что с какого адреса ему пофиг (наверное).
Я тупо не могу сохранить результат... Как это сделать?

В Alasm'е после компиляции жмешь 'D' - выход в STS, в STS'e - 'S' - запись на диск, там указываешь стартовый адрес блока кодов, где находится пропатченый TR-DOS и его длинну - #4000. Вроде все.

VNN_KCS 29th March 2009 21:10

Quote:

Originally Posted by Kurles (Post 191910)
В Alasm'е после компиляции жмешь 'D' - выход в STS, в STS'e - 'S' - запись на диск, там указываешь стартовый адрес блока кодов, где находится пропатченый TR-DOS и его длинну - #4000. Вроде все.

Во-во, точно так. Адрес, откуда выгружать - #8000(32768), длина #4000(16384).
Там интересно получается. Грузится код пзу, а в него, где надо, свой код. Можешь даже свой ник вписать

Добавлено через 11 минут
Люди, может кто помнит. Нужно следующее: org#6100
...
код проги
...
ret
org $??????
На месте ????? должно быть вычисление до ближайшего ровного адреса: #6200,#6300 и т.д.
Когда-то пользовался а сейчас не вспомню хоть убей. Подскажите плз.
Спасибо.

Zloy 29th March 2009 21:32

Спасибо огромное за помощь! Правда уже сам успел разобраться...
Вопрос по хелпу к ALASM остается открытым. Поделитесь, у кого есть.


All times are GMT +4. The time now is 21:03.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.