Вход

Просмотр полной версии : Неустойчивый запуск TR-DOS



andrew76
18.03.2007, 19:02
Помогите с такой проблемой.
ТР-ДОС запускаеться нейсточиво.
После включения компа если нажать ENTER вываливаеться в ТРДОС, Заставка ТРДОС появляеться не вверху а выезжает с о скроллингом снизу, и ничего не возможно ввести в командной строке.
Сбрасываю комп набираю RANDOMIZE USR 15616 нормально запускаеться и все работает.
И еще если в BASIC ввести команду NEW то он как положенно сброситься с очисткой памяти, а если сразу же второй раз сделать NEW то опять вываливаеться в ТРДОС. причем опять заставка выезжает снизу.
Спектрум ЛЕнинград 1 BASIC 1990 + контроллер дисковода TR-DOS 5.03
ПЗУ стоит одна в Спектруме AT27C256 переключаеться с 27 ноги. Из контроллера взял сигнал до транзистора с выхода ЛН1.

jtn
18.03.2007, 22:16
BASIC 1990Turbo90? оно очень не любит трдос

andrew76
18.03.2007, 22:23
Turbo90? оно очень не любит трдос

Нет, не Turbo 90, просто прошивка 90 года. С турбо режимом работы с магнитофоном.
Внизу стандартная заставка 1990 Sinclair research Ltd

jtn
18.03.2007, 22:35
если там есть монитор по NMI, то это турбо90

Mikka_A
18.03.2007, 23:34
Нет, не Turbo 90, просто прошивка 90 года. С турбо режимом работы с магнитофоном.
Внизу стандартная заставка 1990 Sinclair research Ltd

Блин... не ту кнопь наждал,но спасибо тебе не помншаит.:cool:

если мне не измкняет память то в 90 только Турбо было.
Эт раз,и второе - именно в комбинауии ТРДОС+90Турбо шили 256.

У меня у самого такое есть до сих пор.

Так что я думаю Эксплойтед прав.

Есть возможность слить образ пзу?
я бы сравнил со своим.

andrew76
19.03.2007, 00:20
Блин... не ту кнопь наждал,но спасибо тебе не помншаит.:cool:

если мне не измкняет память то в 90 только Турбо было.
Эт раз,и второе - именно в комбинауии ТРДОС+90Турбо шили 256.

У меня у самого такое есть до сих пор.

Так что я думаю Эксплойтед прав.

Есть возможность слить образ пзу?
я бы сравнил со своим.


Я сам зашил. В прграмматоре уверен.
Вот моя прошивка BASIC 90 + TRDOS503.
А второй файл как раз турбо. Но у меня зашиты первые две.

Кстати незнаю как в ТУРБО, но та которая у меня зашита позволяет работать с магнитофоном и при стандартной скорости и при двойной.
Переключение режимов "-" и "+"
Монитор тоже есть, только не помню какой командой включаеться.
Может кто помнит?

Иван
19.03.2007, 06:44
Всю жизнь, что я работал со спеком, использовал 1990 прошивку. Не было конфликтов с трдос. НИ-КОГ-ДА. Даже magic работала как положено. + в совокупности с 128.
Вон и сейчас лежит Л-1 (48, 1990) + BDI. Работает без глюков.
Монитор включается по *, выход по edit вроде.

Sonic
19.03.2007, 14:38
Это зависит от скорости переключения ПЗУ при переходе на #3Dxx.
Если переключение мгновенное, то все будет работать.
Если нет, то с любой прошивкой с утолщенным шрифтом будут глюки.
Теория возникновения глюков такова: точки входа подобраны так, что они попадают на те места, где в шрифте пробел или промежутки между символами. То бишь байты #00. То бишь команда NOP. А в самом TR-DOS точки входа выглядят так:
NOP
JP #xxxx.
Этот NOP и нужен для компенсации задержки переключения. Что в одном ПЗУ NOP, что в другом ПЗУ NOP. Если схема переключения медленная, то NOP будет считан из ПЗУ бейсика.
А вот в ПЗУ с утолщенным шрифтом в этих местах не везде NOP. При быстром переключении ничего не будет - NOP выберется уже из TR-DOS. А вот при медленном из бейсика выберется не NOP, а что-то другое. В результате будет испорчен какой-либо регистр или вообще управление перейдет не туда, куда надо.

Иван
19.03.2007, 15:15
1990 имеет нормальный шрифт. С утолщенным 1990 мне не встречался.

andrew76
19.03.2007, 15:38
1990 имеет нормальный шрифт. С утолщенным 1990 мне не встречался.
Вот кусочек прошивки 1990 BASIC c адреса 03D00H

3D00 00 00 00 00 00 00 00 00 00 10 10 10 10 00 10 00
3D10 00 24 24 00 00 00 00 00 00 24 7E 24 24 7E 24 00

А вот тот же самый кусочек но с адреса 3CD0 TR-DOS 5.03

3CD0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
3CE0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
3CF0 FF FF FF FF FF FF FF FF FF FF C3 F1 20 C3 3C 28
3D00 00 18 2E 00 18 14 00 C3 EF 25 C3 4A 24 00 18 FA
3D10 00 18 E7 00 18 E7 00 C3 69 2F CD 21 3D E5 C3 6C
3D20 01 CD F3 31 00 00 DC 4C 3D 21 C2 5C C9 00 00 00

интересно , что до адреса 3CF9 идут FF, а по адресам 3CFA и 3CFD стоят команды безусловного перехода соответственно по адресам 20F1 и 283C.
А вот при обращении к адресу 3D00 на команду перехода накымаемся только на адресе 3D07.
А с 3D00 видимо идет сначала сохранение стэка?

ПЗУ AT27C512 время доступа 45 .

Sonic
20.03.2007, 14:25
Вообще-то #18 - это код команды JR. На #3D00 и #3D03 получаем цепочку из JR, затем JP. Видимо это сделано для того, чтобы впихнуть как можно больше точек входа в область пробела (целых 9 NOPов подряд).

Mikka_A
20.03.2007, 15:48
интересно , что до адреса 3CF9 идут FF, а по адресам 3CFA и 3CFD стоят команды безусловного перехода соответственно по адресам 20F1 и 283C.
А вот при обращении к адресу 3D00 на команду перехода накымаемся только на адресе 3D07.
А с 3D00 видимо идет сначала сохранение стэка?


На,почитай ,может пригодится....

andrew76
20.03.2007, 17:01
А вообще может кто нибудь объяснить следующее:

Нажимаю кнопку Сброса потом даю команду RANDOMIZE USR 15616
Запускаеться ТР-ДОС , но криво, заставка выезжает снизу.
Нажимаю кнопку сброс , команда УСР 15616 нормально запускаеться ТР-ДОС.

Или следующая лажа.
1. Жму сброс, даю команду NEW происходит сброс с очисткой памяти и выход в BASIC.
2. Даю еще раз команду NEW происходит сброс с очисткой памяти и выход в ТРДОС.

Жму сброс повторяю с пункта 1 все снова.
Короче строго через раз после команды NEW выходит в TRDOS. Короче есть какая-то закономерность.
Поменял уже все ТМ2 и в контроллере и в СПЕКЕ. На всяк случай.:)

Добавлено через 16 часов 39 минут
И еще одна проблема.
Переключатель ON-OFF-RESET вообще не впаивал , следовательно он стоит в положении ON.
А значит при сбросе Спектрум должен сразу заходить в ТР-ДОС.
Так вот он этого тоже делать не хочет. :)
Только как описанно в преведушем сообщении.
С такой проблемой кто нибудь сталкивался?