С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
А как попробовать на реальной машинке? (пусть без какой-то там доп.памяти).
Сам файл .dsk почему-то тотал коммандером с плагином не распаковывается..В эмуляторе работает, чиби летает да. Интресно бы какой-то набор файликов под RT-11 заполучить чтобы загрузить через стык С2 это вот дело и глянуть.
Последний раз редактировалось BlaireCas; 04.09.2022 в 13:29.
Шедевр портирования на УКНЦ - игра Highway Encounter
Эмуляторы: UKNCBTL, EmuStudio (респект авторам)
Ну просто так подключить этот .dsk как скажем устройство HX1 и запустить чего-то с него не вышло. Выдало ?DIR-F-Invalid directory. Странный образ диска, но эмулятор Никиты его переваривает вполне.
Может это и не образ диска в понятиях RT-11 совсем, а ну типа образ игры на диске которая сама себя грузит и системой не пользуется от слова совсем.
Последний раз редактировалось BlaireCas; 04.09.2022 в 14:11.
Шедевр портирования на УКНЦ - игра Highway Encounter
Эмуляторы: UKNCBTL, EmuStudio (респект авторам)
Так я и написал - нет там RT-шной файловой системы. И скорее всего нет никакой - там по сути - раскатанная на диск программа с оверлеями, которая в нулевом блоке (ака адреса 0-776) содержит свой загрузчик корневого сегмента, а там уже есть процедура подгрузки частей программы с этого "образа на диске"
Ну это вот логично чтобы загружать полностью всю оперативку причем в двух процессорах. Сам помню парился мол как сделать чтобы с RT был загрузчик и загружал творение потом во всю память компа (когда первая-же строка кода типа .=0 даааа..). Фактически задача из разряда "как загрузить с системы полный снапшот всей памяти (ОЗУ+видеопамять). Проще видимо обойтись БЕЗ системы.
Шедевр портирования на УКНЦ - игра Highway Encounter
Эмуляторы: UKNCBTL, EmuStudio (респект авторам)
Так и обычная УК-НЦ переварит - её задача - загрузить с устройства некий блок и передать ему управление - а дальше уже работа этого блока. Например - это может быть загрузчик RT с понятными последствиями
А ещё встречал экзотику - на Falcon в загрузчике есть модуль загрузки standalone программ с диска с ФС RT11 - пример:
- - - Добавлено - - -Код:@HX2 Тест быстродействия (кэш, если он есть, выключен) BR .+2 269 316 оп./сек R1+R0 classic 269 333 оп./сек R0(23456.)+R0(12345.) empty 81 884 оп./сек R1(23456.)+R0(12345.) 62 551 оп./сек -> 264 931 оп./сек R1+@R0 classic 162 776 оп./сек R1(23456.)+@R0(M-12345.) empty 81 883 оп./сек R1(23456.)+@R0(M-12345.) 54 251 оп./сек -> 160 764 оп./сек ...
Совсем не логично![]()
В этом плане именно логично. А иначе например вот как загрузить всю память (можно упаковать конечно так видимо и делают.. некоторые).
Есть например 64 кб памяти которую надо загрузить чем-то. Тут конечно можно сказать что "да пусть на систему останется, чего ее грузить-то всю". Но так реально удобнее просто когда знаешь что все ресурсы в твоем распоряжении. У меня вон повеселее вещи которые УКНЦ с дефолтным макро-11 не переварит.
Адреса больше 177777
Код:4016 016000 VBufferSize = FieldDX*FieldDY*CTILE_SIZE 4017 051600 VBuffer1: .blkb VBufferSize 4018 067600 VBuffer2: .blkb VBufferSize 4019 4020 END: 4021 4022 056700 .=VDATA*2 4023 4024 .radix 10 4025 4026 GlobalObjLen: 4027 256700 004 003 004 .byte 4,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4 256703 004 004 004 256706 004 004 004 256711 004 004 004 256714 004 004 004 256717 004 004 004 256722 004 004 004 256725 004 004 004[свернуть]
К счастью виндовый порт macro-11 нормально относится к таким адресам и в итоге работает на УКНЦ.
(как из таких адресов потом считывать, ну через регистры Q-bus собственно)
Последний раз редактировалось BlaireCas; 04.09.2022 в 14:48.
Шедевр портирования на УКНЦ - игра Highway Encounter
Эмуляторы: UKNCBTL, EmuStudio (респект авторам)
Игра расчитана на загрузку с дисковода, и только с привода 0.
Просто не знаю как определить с какого привода произошла загрузка бутсектора.
https://github.com/aberranthacker/ch...otsector.s#L75
Изначально, когда кода было совсем немного, мне просто надоело ждать пока загрузится операционная система.
А потом оказалось, что куда проще обойтись без операционной системы.
aberrant_hacker
Пример-прикол.
Скопировать 16 Тб с диска на диск - у меня ушло примерно 23 часа. Пусть скорость флопа - 100 кб/с (что-то мне подсказывает, что реально - меньше, но.. путь у нас есть две дискеты на 16 ТБ и со скорстью 100 кб/с - в те времена) . Тогда (в те времена) мне понадобилось бы... Примерно 1988 дней или чуть меньше 5.5 лет. Как раз к покупке Квант-а бы успел
- - - Добавлено - - -
R0 - номер устройства, R1 - CSR
- - - Добавлено - - -
А, да, возвращаясь к примеру-приколу - то есть скорость дисков у нас выросла больше чем в 2000 раз - вот по какому поводу надо скулить
- - - Добавлено - - -
На самом деле - фигня все эти вопросы, всё решаемо - нужно только помнить про ограничения - а я ушёл пилить дальше DisAsm-11 - восстановлене утерянных исходников - гораздо более нужная (с моей точки зрения) для PDP-11 задача. Без документации иногда сложно понять - что происходит.
Вон, на vcfed народ озадачен был - загружает тест RL типа как с перфоленты (через PDPGUI) - а он не стартует. Загружает XXDP, а из под него этот тест - вуаля - всё работает. И "неожиданно" выяснилось - что стандартный стартовый адрес 200 - он нисколько не стандартный и есть программы, которые не имеют в LDA стартового адреса вообще (тот тест RL как раз пример), но тем не менее - успешно стартуют.
А поскольку я восстановил исходники нескольких мониторов XXDP - для меня всё было прозрачно - монитор перед загрузкой проги по адресам 200-202 пишет команду <JMP @#2100> - и это ещё один "стандартный" стартовый адрес. Плюс этот тест ТРЕБУЕТ а) загруженного монитора и б) специального модуля на диске, который монитор может подгрузить для программы - одним стандартным EMT запросом. Может про этот фокус где то в доках и есть инфа - но не попадалось.
randomizer(04.09.2022)
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)