а что мешает гнать на прaвильный LD но в конце com файла копировать SAV в папку NTFS )
Вид для печати
Поправил косячек:
https://yadi.sk/d/jEQ69u_Zu0PYYQ
Пора завязывать на сегодня, а то уже путаюсь..
S_V_B, шикарно! особенно меня радует оригинальное решение по поводу
разногласия видео на разных платах - это раз, всё мерцает, но не двигается и уже чувствуется
что да - быстродействие потяжелело, зато красиво красиво - разноплановое размещение спрайтов или ??? = нету перемешки цветов когда объекты наложены????
так и хочется стрельнуть) https://smiles24.ru/data/smiles/smiles-igry-73.gif
- - - Добавлено - - -
или приделал? )
забираю.
Да нормально там всё с выдачей ошибок.
Я делаю всегда компиляцию с выдачей листинга:Если появилась ошибка - смотрим сначала где (по листингу), если непонятно то что (по коду ошибки).Код:MACRO/LIST:DK: TEST.MAC
Можно ещё командником выводить строки с ошибками из листинга:
Тоже держу все файлы в обычной папке, удобно.Код:for /f "delims=" %%a in ('findstr /B "Errors detected" TEST.LST') do set "errdet=%%a"
if "%errdet%"=="Errors detected: 0" (
echo COMPILED SUCCESSFULLY
) ELSE (
findstr /RC:"^[ABDEILMNOPQRTUZ] " TEST.LST
echo ======= %errdet% =======
exit /b
)
Было бы очень круто если кто-нибудь кто в теме (например Manwe :)) прикрутил бы PDP11->MACRO-11 к Sublime Text и чтобы из LST файла ошибки в редакторе подсвечивались... как у них с PDPy сделано :) ,а еще чтобы SAV в имидж запихивался и эмулятор со STARTS.COM запускал.. во я губу раскатал :) Но писать бы было одно удовольствие :)
Сейчас скажут... "спасение утопающего.. дело рук", я бы занялся только за все сразу хвататься, я с настройкой Sublima буду месяц разбираться.. а у кого может наработки есть...
Ну это точно вопрос не ко мне. Если я редактирую исходник на PC - редактор FAR-а (он частично синтаксис MACRO-11 подсвечивает), а если на эмуляторе - то MIM из под RSX - в нем никакой подсветки нет, но зато непревзойдённое (для того времени и частично для сейчас) удобство работы с файловой системой (с добавлением дружественности) плюс супер команда ВЫПОЛНИТЬ - с ней я вообще из MIM-а не вылазюю
Убрал WAIT, сделал по другому:
В ПП:
V100:
MOV #KSI/2,@#177010
MOV #1,@#177014
RTI
В ЦП:
2$:TST @#KSI
BEQ 2$ ;ждем обратного хода
CALL PUTBLK ;стираем спрайт
CALL PTSPR ; рисуем
CLR @#KSI
А то за один WAIT не успевает, а за два медленно.
Вроде лучше стало:
https://yadi.sk/d/jEQ69u_Zu0PYYQ
S_V_B, я пока только в эмуляторе запускаю
перерисовка по ХСТОПХ нажатию радует )
скорость вроде полегчало чуток )
вопрос: зачем такой бордюр огромный по высоте у спрайта корабля?
Странно, на реале паникует...?MON-F-TRAP TO 10.
Стек вроде целый..
SH MEM говорит, что RMON сидит на 145554.
Компилятор пишет:
High limit =122412
Значит у меня в запасе еще 9Кб.
почему тогда ?MON-F-TRAP TO 10.
копаем дальше....
Исправил, но смысл так и не понял....
Делал .PSEC PROG тогда стартовый адрес 104006.. при старте на риале возникает паника.. в эмуляторе работает
когда делаю .ASECT .=001000 - все работает..
что-то портит верхушку памяти... и вылетает на самом старте.. когда программа еще ничего сделать не успела.. :(
- - - Добавлено - - -
C .ASECT .=001000 портятся уже данные и это заметно только в середине лабиринта.... каша вываливается..
У кого-нибудь есть соображения?.. Что происходит и почему в эмуляторе работает, а на реале нет?????
а что показывают PMEM.SAV , MEM.SAV ? http://archive.pdp-11.org.ru/ukdwk_a...omplekt/PH123/
Портится память - такие вещи тяжело ловить конечно. Тоже такое было. Пробовал переставлять крупные куски программы, чтобы как-то понять симптомы, потом постепенно добирался до того что же конкретно портит - в общем, локализация проблемы. Обычно в итоге это была какая-нибудь мелочь вроде того что не тот режим адресации использовал (банально забыл # поставить например).
S_V_B, попробуй сразу вырубить стартовый файл и запустить игру? (на реале)
Добавил по кнопке "3" палитру как в БК11м (11я)
https://pic.maxiol.com/thumbs/155990...0607155655.png
По моему симпатичней :)
Потому что эмулятор не эмулирует на 100 процентов точно реальное железо. И поэтому ожидать 100 процентно одинаковое поведение не стоит. Даже сейчас, когда точно известно, как работает ВМ1 и ВМ2 (спасибо, Vslav!), не приходится ждать 100 процентно точного эмулятора - на плате УК-НЦ хватает микросхем, про которые не известно на 100 процентов точно, как они работают
Да хоть десять раз вскрыты - логика работы то не описана. Вот когда опишут и её перенесут в эмуляторы... И даже после этого - микросхемы то только по названию цифровые - но от этого промежуточные значения сигнала и время перехода (которые плавают от экземпляра к экземпляру) никто не отменял. Я сильно сомневаюсь, что это можно вывести из снимков и формального описания по ним. Так что эмуляторы всегда будут только приблизительно описывать работу железки - пусть этого и будет достаточно для работы подавляющей части софта. Кстати, больше всего в этом плане будет мучений с видео-частью - там цифра ещё ближе подходит к аналогу
Конкретный пример. Работал я как то на СМ-1600. И этот экземпляр отличался оригинальностью. Он НЕ РАБОТАЛ, пока не прогреется.
Форма сигнала, уровни и задержки могут меняться с температурой да ещё и не линейно - тоже разобрались и описали?
- - - Добавлено - - -
Ещё пример. Собрал нечто на FPGA. Описанное на VHDL проходит проверку в эмуляторе в софте (я думаю, согласитесь, что разработчик кристалла и софта под него, зная тонкости и нюансы - может позаботиться о точности эмуляции). Результат синтеза заливаем в железку и - опаньки - не работает. Или хуже того - вместо 9600 для эмулируемого ком порта ставим 19200 - и работающее перестало работать. А потом в другом месте что то меняем и - опаньки - 19200 работает. А проверка на эмуляторе - всё забибись
Это все ни о чем)
Второй пример беспредметный,
А первый, про глючную цифровую технику, которая не работает, пока не прогреется - это не то, что не эмулируется, это НЕ НУЖНО эмулировать.
Эмулируется четко работающая система, а не глючная, у которой высохли емкости или чего-то еще.
Если кому-то интересно эмулировать сломанный комп - флаг в руки. Мне интересно эмулировать исправную систему)
Электроника бывает работающей (по спецификации) или не работающей (по оной же).
Если программа использует особенности электроники, не заданные в спецификации, то работающая (по спецификации) аппаратура может оказаться не работающей - для такой программы.
И как - считать такое устройство исправным или нет?
- - - Добавлено - - -
На двух железных? Это всего лишь подтверждает мою мысль - не стоит надеяться на эмуляторы, особенно когда нет точной спецификации железа. И нет, содержимое ПЗУ УК-НЦ не сильно поможет продвинуться в создании более менее точного эмулятора.
Да на двух железных.. если раскопаю ошибку в коде будет видно,что в эмуляторе поправить..
Реверс всех чипов в УК-НЦ завершён? Нет? Тогда на основании чего написан эмулятор УК-НЦ?
- - - Добавлено - - -
УК-НЦ был создан на основании реверса чипов или всё таки спецификаций?
На этот вопрос ответить нечего?
Короче. Лично мне уже всё понятно. Больше тему не засоряю. И можете не отвечать - с этой же целью.
Мимоходом заметил неточность: в эмуляторе ASH R4,R0 дизассемблируется как ASH R0, R4 (с другими регистрами соответственно)
Нет на эмуляторе Никиты..
Пришел к выводу, что косяк происходит на этапе сборки-компиляции..