Просмотр полной версии : Пожелания и планы по эмулятору Башкирия-2М
Предлагаю высказывать пожелания по развитию эмулятора в этой теме. В первом посте я буду собирать их вместе, и по мере реализации отмечать как сделанные.
На данный момент сделано:
11.09.2008
- эмуляция Вектор-Старт-1200 и Ириша (не полностью)
12.09.2008
- запоминание пути к файлам отдельно для каждого компьютера
- добавить в ini настройку положения окна эмулятора
- чтобы эмулятор запоминал размер окна (для каждого компьютера)
- задать произвольный размер экрана (маленькая панелька где вводишь значения для Х и Y)
16.09.2008
- отключение звука AY при входе в дебагер
- иконка для скриншота и имя скриншота по умолчанию с нумерацией
- поддержка CAS токенизированных Basic-файлов в Векторе
22.09.2008
- кнопка выбора начального загрузчика
- поддержку загрузки файлов rom, r0m (загрузка с 0-го блока) через меню File-Open
- режим паузы (клавиша Break)
- окно всегда поверх других (always on top)
23.09.2008
- исправил ошибку (звук в режме паузы)
- добавил пункт меню "Hide mouse pointer"
26.09.2008
- иконка ПЗУ БИОСа у Вектора другого цвета
- выбор ПЗУ и квазидиска сохраняется в .ini
- немного доделан Корвет
01.10.2008
- сохранение скриншота в текущем разрешении экрана
- формат файла скриншота - любой из поддерживаемых библиотекой GDI+
13.10.2008
- эмуляция КР512ВИ1 (пока без будильника)
- эмуляция винчестера для Орион-128 с Z80
14.10.2008
- эмуляция винчестера для Вектора
16.10.2008
- исправил ошибки в отладчике
20.10.2008
- исправил ошибки эмуляции БК-0010
27.10.2008
- исправил ошибки эмуляции БК-0010
- переделал диспетчер памяти ПК-6128ц в соответствии с РЭ, добавил переключение страниц экрана через порт 0Dh
- подправил эмуляцию винчестера для Орион-128
04.11.2008
- добавил эмуляцию Агат-7
06.11.2008
- дебагер: клавиша F1 и выбор кодировки (сама кодировка задаётся в файле codepage.txt)
28.11.2008
- небольшие доработки чтения из wav, размер загрузчика в Векторе по размеру файла, бит потери данных в регистре статуса ВГ93
19.01.2008
- убрал смену текущего каталога при открытии файлов
- теперь все 64 регистра 512ВИ1 сохраняются в файл
03.02.2009
- мелкая доработка таймера ВИ53 (заметно улучшение эмуляции программы SSTV)
20.02.2009
- доделал цвет для Апогея
25.02.2009
- добавлен ПК Юниор (пока без цвета, с "неродным" знакогенератором и без поддержки .wav)
20.03.2009
- добавлена поддержка управления магнитофоном для ПК Юниор (пока без записи)
- выложил файлы для ПК Юниор и Вектор Старт-1200
23.03.2009
- исправлена ошибка эмуляции флага доп. переноса в командах вычитания
26.03.2009
- добавил клавиши F11 и F12 в конфигурацию Вектор Старт-1200 аналогично Вектор-06ц
30.03.2009
- исправлена ошибка эмуляции в команде DAA
03.04.2009
- добавлен цветной режим ПК Юниор
06.04.2009
- заменил знакогенератор ПК Юниор, продублировал курсорные клавиши для БК-0010
02.05.2009
- добавил эмуляцию БК-0011м
25.05.2009
- исправил кое-какие баги эмуляции БК-0011м, теперь Бейсик работает, ANDOS теперь не единственная, которая грузится, однако демки по прежнему вылетают (кроме spiders)
29.08.2009
- добавил эмуляцию игр Кок, Собрать Буран и Агропром игрового автомата Фотон на базе ZX. Чтобы опустить монетку нужно нажать F1
- немного подправил эмуляцию AY
18.09.2009
- появилась возможность открывать файлы посредством Drag&Drop
- тип конфигурации, в зависимости от расширения открываемого файла, описывается теперь во внешнем файле emu.ext, не удаляйте его
- в качестве бонуса: открытие некоторых типов музыкальных файлов Спектрума, надеюсь ivagor будет не против, что я использовал его модификацию плеера .pt3 файлов для Вектора
21.09.2009
- добавил ещё один плеер, и теперь можно слушать музыку следующих форматов: .pt2 .pt3 .stp .stc .zxs
30.09.2009
- добавил поддержку trdos-файлов .trd и .scl для ZX, плеер .sqt (на некоторых файлах глючит)
01.10.2009
- исправил мелкий недочёт эмуляции видео Вектора-06ц (заметное в мультиколорных эффектах)
06.10.2009
- исправил ошибку эмуляции
15.10.2009
- добавлена поддержка образа SD-карты (только минимум команд, необходимых для чтения/записи сектора)
20.10.2009
- добавилась возможность задавать разрешение в полноэкранном режиме, "магические строки" есть в конфигурации Вектора
26.10.2009
- исправлена ошибка эмуляции EI
28.10.2009
- добавились новые возможности в отладчике
29.10.2009
- метки на отдельной строке в листинге теперь тоже показываются
- установка курсора мышкой
- исправлена ошибка генерации прерываний
31.10.2009
- вывод битового звука через ВИ53 в Векторе
02.11.2009
- подключил AY к БК-0011м
03.11.2009
- подключил Covox к БК-0011м
04.11.2009
- цветной режим БК-0011м по-умолчанию, увеличенный размер по вертикали
- исправлена ошибка BCD-режима таймера ВИ53
- добавлены конфиги для цветного Специалиста
25.01.2010
- добавил эмуляцию ЮТ-88 в минимальном варианте с индикаторами
17.02.2010
- добавил MSX и MSX-2. Видеорежимы MSX-2 пока реализованы не полностью. Поддержки слотов практически нет. Но простые игры (ромы 16-32К) уже можно запускать
23.02.2010
- небольшие доработки и исправление ошибок
01.03.2010
- исправил палитру MSX
- улучшена эмуляция Корвета
15.03.2010
- cовместными усилиями с observer-k и Иваном Городецким удалось восстановить архитектуру ПК8002 Эльф. В результате добавилась эмуляция ПК8002 Эльф
25.03.2010
- улучшена эмуляция MSX и MSX-2, реализованы все видеорежимы, а также некоторые ROM-мапперы. Для ROM-мапперов необходим файл msxromdb.xml, который можно взять из blueMSX и положить в каталог MSX эмулятора
08.04.2010
- изменил количество строк в кадре для Корвета (с 312 на 306)
10.05.2010
- исправлены ошибки эмуляции процессора БК-001х
11.05.2010
- исправлена скорость эмуляции команд процессора БК-001х
- устранён баг эмуляции контроллера дисковода БК-001х
15.05.2010
- небольшие исправления эмуляции БК-001х и Корвет
17.05.2010
- добавил поддержку открытия .bin файлов для БК-0010
05.08.2010
- небольшое исправление AY
30.08.2010
- исправлена ошибка, из-за которой не работал ZX Spectrum 128
- базовая частота AY у большинства компьютеров теперь ровно 1773400 Гц
02.09.2010
- добавлена возможность просматривать (и редактировать, даже ПЗУ) в отладчике все области памяти
09.09.2010
- поддержка MSX rom-ов с началом по адресу 0000h,8000h + исправлены некоторые ошибки
10.09.2010
- исправлена обработка спрайтов MSX, выходящих за верхнюю границу экрана
14.09.2010
- начальную палитру компьютеров семейства Вектор теперь можно задать в конфиге
17.09.2010
- добавились некоторые возможности в отладчике (простмотр регистров VDP и AY, счётчики тактов и прерываний)
21.09.2010
- улучшен автодетект ковокса в конфигурации БК-0011м
27.09.2010
- добавлен компьютер Robotron 1715 (для загрузки необходим образ дискеты, на данный момент реализовано только чтение)
04.10.2010
- добавлена возможность формировать образ диска "на лету" из файлов выбранного каталога
25.10.2010
- добавлен игровой автомат ТИА-МЦ-1, файлы с играми находятся в отдельном архиве
29.12.2010
- добавил эмуляцию Океан-240, недоделан, дамп монитора изменён одним из пользователей
14.01.2011
- добавил дисковод к Океан-240
12.03.2011
- добавил эмуляцию Львов ПК-02 (это такой гипотетический комп, существовавший как минимум в одном экземпляре)
06.04.2011
- новая конфигурация Вектора с Coman-овским контроллером дисковода
- поддержка кишинёвского адаптера Z80, эмулятор Спектрума для Вектора теперь работает
23.04.2011
- добавлена поддержка ERAM для Вектор-06ц, размер рамдиска до 8Мб
08.05.2011
- новая конфигурация MSX2 fdd (с дисководом)
23.05.2011
- добавлена конфигурация Вектор-06ц с ВМ1
На данный момент существуют такие пожелания:
- регулировка скорости эмуляции не через конфиг (диалог,клавиши)
- возможность включать и выключать лог обращений к памяти и портам
- поддержка CSW, как более компактный вариант WAVа
Сделай пожалуйста отключение звука AY при входе в дебагер - а то напрягает вибро с ушами :)
Очень желательно, чтобы "замыливание" картинки при масштабировании экрана можно было отключить, например как в эмуляторе vector06c Ramirosа.
И присоединяюсь к просьбе Mickа про звук в дебаггере.
И еще одно совсем простое пожелание - разделить папки ПК8000 и Корвета.
эмуляция Вектор-06Ц
- зарелизить Вектор Старт 1200
- сделать поддержку CAS токенизированных Basic-файлов в Векторе (чтение и запись по командам CLOAD, CSAVE, BLOAD, BSAVE), образцы исходных файлов прилагаю
- кнопку выбора начального загрузчика
- поддержку загрузки файлов rom, r0m (загрузка с 0-го блока) (а также может быть и romN..romNNN, где NNN - номер начального блока 0..255) через меню File-Open
- индикаторы обращения к квазидиску, дисководу, МППЗУ
- эмуляция джойстиков: Успид, джойстик С, джойстик П
- сохранение дампа памяти 64кб
- сохранение скриншота в текущем разрешении экрана
трудно ещё чтото предложить, но всётаки можно.
желательно добавить в эмулятор режим видео Scanlines, это когда полосочки по экрану.
ну и также я жду добавления в эмулятор компьютера ириша.
ещё мечтаю увидеть эмуляцию агата, особенно агат 7.
в остальном и так эмулятор уже хорошо развит.
кстати интересно, а когда же будет версия 1.1 хотябы ?
столько лет уже эмулятору а всё 1.0
зарелизить Вектор Старт 1200
А с палитрой что делать? Так и оставить нереальные цвета?
А с палитрой что делать? Так и оставить нереальные цвета?
Блин, так и сподвигаете меня на попытку выпаять РТ5 :)
Mick, лучше "оживи" этот комп, а я (может быть) тестик напишу, выводящий всю палитру на экран. Ну или ivagor напишет :)
Mick, лучше "оживи" этот комп, а я (может быть) тестик напишу, выводящий всю палитру на экран. Ну или ivagor напишет :)
Хорошо постараюсь его реанимировать, но раньше выходных не получится.
поддержку CAS токенизированных Basic-файлов в Векторе
Пардон, а где взять Бейсик, который такие файлы читает/пишет? У меня только дисковые варианты, CSAVE-а там чего-то нету.
Пардон, а где взять Бейсик, который такие файлы читает/пишет? У меня только дисковые варианты, CSAVE-а там чего-то нету.
F3+F11, F12 :)
В эмуляторе мой загрузчик вектора используется. В нем много чего есть :)
3.4. Режимы работы (задаются при перезагрузке путем удержания клавиш):
КЛАВИША РЕЖИМ
нет - квазидиск
F1 - магнитофон
F2 - МППЗУ
F1+F2 - дисковод
F2+F3 - жесткий диск
F1+F3 - сетевой адаптер
F3 - Бейсик v2.5
F4 - Монитор СуперМонстр v3.5
F5 - Тест ТП
AP2 - загрузка из РС через порты ПУ-LPT
F4+F5+AP2 - тест ПЗУ
Если для загрузки выбрано неподключенное устройство, загрузка будет
производиться со следующего подключенного устройства согласно приоритету.
Удерживание клавиши УС при перезагрузке отменяет очистку ОЗУ (кроме
экранной области c адресами 0C000H-0DFFFH) и позволяет войти в режимы:
КЛАВИША РЕЖИМ
нет - магнитофон
УС+F1+F3 - реанимация 0 блока монитора (режим загрузки детектируется)
УС+F2 - загрузка из модуля МППЗУ
УС+AP2 - загрузка данных из РС через порты ПУ-LPT
УС+СТР - загрузка модуля выгрузки данных через ПУ (в мониторе)
УС+F4+F5+AP2 - тест ПЗУ
Только не все комбинации клавиш F* работают в эмуляторе, видимо из-за особенностей PC-шной клавиатуры.
Да, и еще один момент, в эмуляторе в настоящий момент используется версия загрузчика 4.4, хотя есть версия 4.5 (получила меньшее распространение), в которой по сравнению с текущей:
v4.5
[+] заменен код Бейсика (на 698 байт меньше)
[+] заменен код Монитора (на 63 байта меньше)
[+] заменен код теста ТП (на 27 байт меньше)
[+] добавлен модуль выгрузки данных через ПУ (только для монитора)
[+] добавлена возможность загрузки с жесткого диска типа "винчестер"
[+] добавлена встроенная проверка контрольной суммы содержимого ПЗУ
[-] исправлен порядок приоритета устройств при загрузке
Версию 4.5 можно взять тут http://vector06c.narod.ru/boot/boot45.rar , можно включить в состав эмулятора вместо текущей. И в дальнейшем можно будет прикрутить к эмулятору загрузку из образа HDD. Образ я сделаю позже.
Совсем забыл про F3, редко нажимаю :)
Кстати, в новом загрузчике видно, какие клавиши нажимаются, а какие нет (полоска справа).
Добавлено через 11 часов 38 минут
В последней версии есть ошибочка, делал сейчас открытие .rko файлов, заметил, что конфиги берутся не из подкаталога :) Завтра будет исправленная версия с возможностью открытия .rko файлов.
b2m, спасибо, наконецто пути запоминаются.
я думаю в этомже ини файле можно сделать запоминание размеров и положение окна, да и какието другие настройки.
Добавлено через 32 минуты
но коегде эмулятор всётаки пути не запоминает.
например в режиме специалиста и спектр 001.
я думаю в этомже ини файле можно сделать запоминание размеров и положение окна, да и какието другие настройки.
Да, так и задумывалось.
но коегде эмулятор всётаки пути не запоминает
Запоминает. После выбора файла. Если файл не выбрать (отменить), то не запоминает.
неа.
выбираю модель специалист мх, жму значок папка, выбираю там AVSh файлы (cpu, mon).
открываю.
открыть то он открывает, а вот после закрытия эмулятора ини файл не появляется.
тоже самое и с rk? файлами для спектр 001.
для остальных конфигураций всё запоминает.
Вот теперь понятно объясняешь.
Команда File/Open не привязана к какому-либо компьютеру, наоборот, по выбранному файлу определяется компьютер. Т.е. это то же самое, как если указать имя файла в параметрах командной строки.
Например, можно выбрать модель специалист, а потом открыть файл .rk, а в результате получишь Radio-86RK и загруженный в него файл.
да я понимаю, но может стоит привязать файлы cpu и mon к конфигу специалиста мх ?
такие файлы ведь вроде нигде больше не используются.
и ещё хочу попросить, сделай пожалуйста в следующем билде (если это несложно :)) скайнлайн, а то в полноэкранном режиме изображение какоето замыленое.
а то в полноэкранном режиме изображение какоето замыленое
Вот как раз в полноэкранном режиме растягивание не делается, а подбирается подходящее разрешение экрана. Это просто твой TFT монитор сам делает растягивание и замыливание, т.к. разрешение экрана не совпадает с его "родным" разрешением (когда одна точка = одному пикселю монитора).
XobbiMan
12.09.2008, 16:31
Вот как раз в полноэкранном режиме растягивание не делается, а подбирается подходящее разрешение экрана. Это просто твой TFT монитор сам делает растягивание и замыливание, т.к. разрешение экрана не совпадает с его "родным" разрешением (когда одна точка = одному пикселю монитора).
Тогда идея по растягиванию
Если брать за нижний правый угол окна и тянуть по диагонали, то все равно не получится пропорционально растянуть окно.
Может добавить такую функцию как пропорциональный ресайз, скажет удерживаем Shift и растягивает, то уже ни по вертикали, ни во горизонтали окно не растяниться, все будет растягиваться строко пропорционально.
я бы хотел видеть в эмуляторе еще возможность делать скриншоты заданным размером, напрмер 384х288 пикселей в заданный формат, например png.
сейчас по инициативе svofski создается онлайн-картотека ПО Вектор-06ц, аналогов которой для отечественных ПК я не знаю. Работа кипит, но для заполнения картотеки было бы здорово иметь возможность получения скриншотов максимально быстро и просто, т.к. софта много, а на каждый скриншот уходит сравнительно приличное время. и чтобы имя скриншота давалось согласно имени файла без расширения и нумеровалось по порядку, например riseout.rom открыли, получили скриншоты riseout1.png riseout2,png и так далее. генерация скриншота по комбинации клавиш.
Tim0xA
По поводу изменения размера - можно наделать скриншотов, а потом ресайзинг для группы файлов, например с помощью IrfanView.
Сохранение скриншота я сделаю в текущем разрешении, как и просил Tim0xA, плюс сделаю возможность задавать размер окна (внутренней части) через диалог, как просил ZEman. В итоге получим то, что надо. По поводу конвертации в нужный формат я подумаю, не хочется только ради этого прицеплять GDI+, а в стандартном API винды нету возможности сохранять в PNG (или я просто не нашёл, если кто подскажет, буду благодарен).
Комбинация клавиш есть, просто нужно ещё потом Enter нажимать :) По-моему не слишком напряжно. Если, конечно, доделать имя по умолчанию, как описано выше.
в стандартном API винды нету возможности сохранять в PNG (или я просто не нашёл, если кто подскажет, буду благодарен).
Комбинация клавиш есть, просто нужно ещё потом Enter нажимать :) По-моему не слишком напряжно. Если, конечно, доделать имя по умолчанию, как описано выше.
Для сохранения png, наверное, нужна libpng. jpg тоже хороший формат, если можно настроить запись.
Комбинация клавиш Ctrl+Shift+S работает. Но на практике она плоха тем, что в некоторых ретивых программах Ctrl и Shift выполняют какую-нибудь функцию. S.E.S., например, обожает делать инверсию экрана по нажатию Ctrl.
Можно сделать вариант layout.kbd в котором нужные для служебных вещей клавиши не будут задействоваться, но кнопка на тулбаре еще удобнее.
OK. Сделал кнопку на тулбаре и имя скриншота с нумерацией.
хороший эмуль выходит :)
лично я жду 4 нововведения в эмулятор:
1) регулировка скорости
2) скайнлайн
3) млеочь конечно, но думаю стоит сменить у эмулятора иконку, есть здесь художники ? ;)
4) самое главное на что надеюсь это эмуляция агата.
Мои пожелания:
1) Раз уж люди не могут без звука, когда эмулятор в фоне, я хочу иметь возможность оперативно отключать звук вручную (хоть бы и кнопкой на тулбаре). Но лучше иметь возможность вернуть чтоб было как раньше (хоть бы даже и через конфик). Я заполняю картотеку и мой моск потихоньку повреждается от бесконечного улюлюканья, а совсем без улюлюканья тоже не то;
2) Я знаю как включить паузу методом вызова отладчика, но это не очень удобно. А можно сделать так, чтобы пауза, но без отладчика? Нормально, если будет только одно из двух: пауза или отладчик, как настроишь;
3) некоторые программы не падают при просыпании лаптопа из гибернации. Желаю увидеть эмулятор b2m в их числе :)
хоть бы даже и через конфик
А что, разве сейчас нельзя удалить строчку в "конфике" main.globalsound=1?
чтобы пауза, но без отладчика
тыкай в скриншот :) а в Векторе есть ещё выбор ПЗУ и RAM диска. Или диалог открытия файла мешает сильно?
при просыпании лаптопа из гибернации
Нету у меня лаптопа, и гибернацией я не пользуюсь. Но если есть какие-то особенности программирования в таких случаях, то охотно узнаю, если расскажешь :)
- Про main.globalsound=1 я не знал, ну невозможно за всем уследить. Мой моск тебе благодарен.
- В скриншот и тыкаю, это работает, но через некоторое время начинает утомлять =)
- К сожалению я не знаю про особенности программирования в таких случаях
b2m, заметил что эмуляция корвета недоделана.
нехватает пзу 2.0 и контура, как это сделано в эмуляторах Virtual Korvet и Korvet 0.9.
также неработают игры Dandare, Dandare2, Deflect.
очень жду регулировку скорости и скайнлайн.
хочу ещё попросить, можно ли добавить опцию чтобы убирать стрелку от мыши с видимой части экрана ?
Звук загрузки с ленты (если загружаем через "Play/Stop")
b2m, да ты оказывается уже сделал поддержку basic cas-файлов для Вектора и молчишь! Работает и cload и csave :) Спасибочки, это очень здорово!
В приложении лежит очень хорошая игра "Бизнес" на бейсике. Она состоит из двух частей. Вторая - бинарник business.bin с образом экрана, который загружается после запуска первой части по команде bload"" начиная с адреса $A000. Проясни пожалуйста ситуацию с поддержкой команд bload"" и "bsave".
который загружается после запуска первой части по команде bload"" начиная с адреса $A000
А откуда ты узнал адрес? :) В .bin файле заголовка-то нету, откуда он такой взялся? Попробуй записать что-нибудь командой BSAVE и посмотри, что должно быть вначале.
А откуда ты узнал адрес? :) В .bin файле заголовка-то нету, откуда он такой взялся? Попробуй записать что-нибудь командой BSAVE и посмотри, что должно быть вначале.
Адрес взят из SAVE-файла от эмулятора VE27 с этой игрой. Там бинарник загружен с адреса $A000. Я и подумал, что он такой должен быть. Файл именно в таком виде ко мне попал, без заголовка. Ок, разберемся, вопросов больше нет пока.
По-моему, у команды BLOAD нельзя задавать адрес, он берётся из заголовка. К тому-же, бейсик не разрешает загружать данные, если они пишутся за пределы какого-то диапазона, что-то вроде 4000h-7FFFh. Т.е. нельзя загрузить поверх бейсика или в экран. Это, видимо, такая фича VE27, а в оригинале, скорее всего был bload "",r который загружал собственный загрузчик, который и загружал потом картинку.
bload"",r на векторе не было (к сожалению). bload/bsave - формат монитора (MON). Tim0Xa, у тебя вроде был файлик с описанием форматов, я могу найти бумажку и оттуда набрать, но с файликом будет проще.
Приклеил я к бинарнику заголовки и контрольную сумму. Загружается, работает.
В продолжение темы загрузки файлов:
driver.cas - программа в формате монитора, который можно запустить нажатием клавиш F4+F11, F12 В мониторе для чтения команда "R".
organ2.cas - программа в формате загрузчика (не wav, а бинарная копия)
b2m, было бы интересно получить их загрузку тоже.
b2m
Не уверен, что это правильный раздел для вопроса, но другие подходят еще меньше.
Поделись секретом вывода биперного звука чере ВИ53, вдруг пригодится :).
И отвлеченный вопрос - мониторы у вас к Б2м в школе были цветные (многие игрушки для б2м вроде как в оттенках серого даже лучше смотрятся)?
а между тем тихо и незаметно вышла новая версия эмулятора от b2m, об изменениях не сообщается но в выбрав вектор 06ц на панельке замечаешь новую кнопку для выбора биоса (файл EPR).
жаль только что кнопка по внешнему виду не отличается от кнопки для выбора rom файлов.
Поделись секретом вывода биперного звука чере ВИ53
Да какой там секрет, просто после инициализации на выходе ноль, а в режиме ноль через заданное время будет еденица. Заданное время, есстественно, минимальное и равно еденице (чаще всего всего один такт). Т.е. для вывода нуля инициализируешь режим ноль, загрузка одним байтом. А для вывода еденицы грузишь еденицу в счётчик.
мониторы у вас к Б2м в школе были цветные
Цветной телевизор был в пединституте, а в основном были ч.б. мониторы.
b2m
Понятно, буду знать.
А если на выходе 1 канала выставить (один раз) единицу, например приведенным тобой способом, а потом делать 0/1 через ВВ51 (вкл/выкл динамика)? Пробовали ли такое на реале?
а потом делать 0/1 через ВВ51 (вкл/выкл динамика)?
А там это не совсем вкл/выкл динамика, по моему это было аппаратное разрешение/запрещение счёта соответствующего канала ВИ53.
Добавлено через 2 минуты
Кстати, насчёт pipe. Действительно был баг в эмуляторе, теперь работает, в понедельник выложу новую версию. Кривенько я pipe написал, оказывается :)
b2m, дмитрий, я знаю что вы сперва начинали делать эмулятор именно Башкирии 2м, и сайт у вас называется соответственно.
а почему нет никаких фотографий этого компьютера и документации какойнибудь ?
единственное изображение у вас на главной странице, но там такая мелкая и некачественная картинка.
Нет у меня Башкирии-2м, вот и нет фоток. А вообще, она мало чем отличается по внешнему виду от той-же Суры,Весты,Хобби. И даже та фотка на сайте - это Корвет, вроде, а надпись я сам дописал. Глядя на фото Суры, думаю даже, что не там написал :)
b2m, ещё один вопросик.
будешь ли ты добавлять в свой эмулятор эмуляцию агата 7 и 9 ?
очень прошу, добавь пожалуйста, я уже много лет мечтаю вновь посмотреть и поиграть в него.
досовый эмулятор находящийся здесь http://ssmu.ru/er/agat/ у меня на новых виндовсах уже не пашет, да и звук был там не ахти, а других вариантов нет, единственная надежда только на тебя.
на приведёном выше сайте с эмуляторами есть и биосы агата и образы дисков, и человек делавший эмулятор досихпор жив и готов к общению (я сам с ним общался в начале года).
жду с надеждой :).
Добавлено через 19 минут
http://rapidshare.com/files/147122245/Agat.rar.html
для ознакомления с агатом сам эмулятор и инструкция.
и на википедии http://ru.wikipedia.org/wiki/Агат_(компьютер)
Присоединяюсь к пожеланию ZEman. Но входит ли в планы b2m эмуляция процессора СМ630Р (аналог 6502)? IMHO, это было бы интересно, может быть даже это сподвигло бы меня на рекомпиляцию с 6502, будь в руках удобный эмулятор.
Со своей стороны хочу сказать, что было бы интересно увидеть также эмуляцию 8-разрядных (i8080 и др.) машин стран бывшего соцлагеря.
будешь ли ты добавлять в свой эмулятор эмуляцию агата 7 и 9 ?
Обещать не могу, но планы были.
входит ли в планы b2m эмуляция процессора СМ630Р (аналог 6502)?
Входит, входит. Незнаю только, когда займусь.
У меня есть совсем простое и скромное пожелание: номер сборки в about и краткая история изменений в readme или где-нибудь online, хотя бы в сообщении здесь.
Присоединяюсь к пожеланию svofski
да номер сборки нетак уж и важен, можно ориентироваться по дате создания.
а вот history это да было бы неплохо, а то вот вышла версия за 19.09.2008 и нигде ни гугу...
краткая история изменений в readme или где-нибудь online
Вроде бы пишу в первом сообщении этой темы. Если нехватает даты, могу и дату ставить.
можно ориентироваться по дате создания
Действительно, фрей-фе :)
а то вот вышла версия за
ОК. Вышла версия от 22.09.2008.
Вышла версия от 22.09.2008.
Спасибо за официальную поддержку rom и r0m файлов :)
официальную поддержку rom и r0m файлов
Я подумал, что вынести логику загрузки файлов в конфиг будет делом не скорым, поэтому пока так.
b2m, для удобства при заполнении картотеки ПО очень нужна пауза и возможность оставить окно эмулятора поверх всех окон.
да, я про это тоже раньше говорил.
пауза на какойнибудь кнопке и возможность включения окна поверх других окон это здорово.
есть и ещё одна мелочь которую бы хотелось видеть реализованой, можно ли сделать так чтоб курсор мышки убирался с видимой части экрана эмулятора ?
пауза на какойнибудь кнопке и возможность включения окна поверх других окон это здорово
ОК.
b2m, я думаю что нужно добавить новую вкладку на эмуляторе, кроме уже существующих File, View, Help желательно добавить Misc или Hot keys в которой укзать некоторые задействованные клавиши.
F9 - speed up
Break - pause
ну и по мере обновления эмулятора будут добавляться другие функции.
хотелось бы ещё увидеть в эмуляторе переключение цветности как это сделано в конфиге башкирии, только с добавлением режима Green и Amber.
ещё очень раздражает пара вещей:
1) сверху на окне эмулятора как правило написано "безымянный vector 06c" и.т.д, зачем это вообще нужно, надпись "безымянный" можно и убрать.
2) при входе в паузу звук заедает и начинает пищать постоянно пока паузу не отключишь, сделай чтоб при входе в паузу звук отключался а при выходе снова включался.
ещё раз спасибо за прекрасный эмулятор, который с каждой версией делается всё лучше :).
Присоединяюсь к пожеланиям ZEman и особенно - про паузу.
Также хотелось бы, чтобы диалог выбора файлов запоминал последний выбранный тип файлов.
гы
http://rapidshare.com/files/147659902/screen.jpg.html
хотелось бы ещё увидеть в эмуляторе переключение цветности как это сделано в конфиге башкирии, только с добавлением режима Green и Amber
В Башкирии была возможность подключать ч.б. монитор и цветной телевизор, и эта кнопка не спец.эффект, а выбор подключения.
зачем это вообще нужно, надпись "безымянный"
Это имя документа :) Когда состояние эмулятора будет сохранено под другим именем, а потом снова загружено, увидишь другое имя. И потом, имя .rom файла на этом месте тебя почему-то не раздражает :)
при входе в паузу звук заедает
Заметили уже :) Да, забыл. Исправлю сегодня.
b2m, добавь ещё пожалуйста возможность убирать курсор мышки с видимой части экрана эмулятора и хоть какойнибудь скайнлайн, очень прошу :)
гы
Ты всегда так играешь? :)
не, это просто прикол, хотел проверить можно ли запускать много копий эмуля и будет ли тормозить
и хоть какойнибудь скайнлайн
Я не совсем понимаю, для чего это нужно. В режиме 1:1 это просто невозможно, куда девать каждую вторую сканлинию? Это можно сделать только для режима 2:1, и может быть ещё для полноэкранного, если соотношение сторон при таком раскладе ближе к реальному (обычно соотношение сторон экрана 4:3).
Добавлено через 33 секунды
и будет ли тормозить
И как? Тормозит? :)
Pipe заработал, как и было обещано - хорошая игрушка, даже поиграл немного :).
b2m,
пусть будет хотябы для полноэкранного и 2:1 режима.
а убирание указателя мыши с экрана эмулятора, это не сложно сделать ?
эмуль у тебя жрёт немного, поэтому ничего не тормозит.
Добавлено через 8 минут
где вы эту игрушку берёте ?
а убирание указателя мыши с экрана эмулятора, это не сложно сделать ?
Не сложно. Уже сделал.
где вы эту игрушку берёте ?
Скачай с моего сайта архив b2m_nedo, загрузись с этого диска, дай команды B: и DIR, и увидишь программы на второй стороне диска. Там есть и pipe.
b2m
Ранее уже высказывалось пожелание включить в комплект поставки эмуля конфиг для ПК8000 с AY. Может теперь, после реализации Mickом данного девайса в железе, "момент настал"?
Может теперь, после реализации Mickом данного девайса в железе, "момент настал"?
Дополнить существующие девайсом AY или сделать третий конфиг для ПК8000?
XobbiMan
23.09.2008, 17:43
Дополнить существующие девайсом AY или сделать третий конфиг для ПК8000?
А возможно сделать чтобы через меню (или тулбар кнопка) можно было включить выключить поддержку (то есть если выключено - то работает как в оригинале, если включено, то как положено), тем самым сможем на разных Бейсиках проигрывать.
Чтобы не плодить лишних конфигов, пока кажется оправданным добавление AY с портами 15h и 14h в существующие конфиги. Если когда-нибудь станет известно про другой, исторически более ранний вариант подключения AY (если он был программно поддержан), можно будет выделить "Sound Tracker" в отдельный конфиг.
XobbiMan
23.09.2008, 17:50
Чтобы не плодить лишних конфигов, пока кажется оправданным добавление AY с портами 15h и 14h в существующие конфиги.
То есть просто будут эти порты использовать, но сама железка будет эмулироваться по-старому, то есть звук старых не-AY игрушек будет?
"Родной" звук ПК8000 выводится через порт 82h и никак не конфликтует с Sound Trackerом, их можно использовать одновременно.
звук старых не-AY игрушек будет?
Будет.
b2m, вот эта игра http://sensi.org/~svo/scalar/ware/369/ не работает в твоем эмуляторе, а у Ramiros-а работает.
Это svofski выявил.
Вот эта тоже http://sensi.org/~svo/scalar/ware/367/
После запуска надо нажать "Пробел", потом после появления рекламы БЛК+СБР. У Ramiros-а работает.
Выявил ivagor, что из министерства правды. Я только грабли прочищал.
Ну я имел в виду, что ты выявил неработоспособность, т.к. в картотеке было указано, а у Ramiros-а я уже сам проверял. Хорошо, когда есть два нормальных эмулятора и можно сравнить.
Кстати, ivagor так и не поведал нам, в чем же была суть защиты Болдер-а, по какой причине он не работал в эмуляторах (до взлома).
Также интересно, каким образом в демке Skynet определяется запуск в эмуляторе и как демка работает в DE1 - видит эмуляцию или нет? У меня нет SD-карты, так что я эту дему на DE1 не могу посмотреть пока.
Про supkalah я знал, копаться пока желания не было, а про reversi не знал. У них, кстати, первые 256 байт практически совпадают :)
Также интересно, каким образом в демке Skynet определяется запуск в эмуляторе и как демка работает в DE1 - видит эмуляцию или нет? У меня нет SD-карты, так что я эту дему на DE1 не могу посмотреть пока.
Фишка с таймером. Вот тест по мотивам SkyNet (я аттачил его раньше в виде com-файла):
http://vector06cc.googlecode.com/svn/trunk/workbench/cputest/timer.asm
На DE1 она эмуляцию не видит, потому что таймер стоит ровно. Мне это приятно, но к сожалению это говорит только о том, что таймер стоит ровно.
Уж купи SD-карту, их теперь разве что не задаром раздают.
У них, кстати, первые 256 байт практически совпадают :)
Так это рекламный модуль центра "Байт" в обоих играх.
Фишка с таймером. Вот тест по мотивам SkyNet (я аттачил его раньше в виде com-файла):
http://vector06cc.googlecode.com/svn/trunk/workbench/cputest/timer.asm
Запустил в МикроДОСе. Выходит, что b2m медленноват слегка.
значит нужна поправка скорости в эмуляторе.
и её регулировка тоже :)
Выходит, что b2m медленноват слегка
А по тесту устройств - быстроват слегка.
Добавлено через 2 минуты
в чем же была суть защиты Болдер-а, по какой причине он не работал в эмуляторах (до взлома)
С сутью я не разбирался, просто убрал проверку "контрольной суммы"
b2m, желательно бы увидеть ещё пару поправок в эмуляторе:
1) путь к квазидискам, думаю лучше сделать так чтоб он не просто запоминал путь к ним, а также запоминал последний открытый.
2) иконка для открытия EPR файлов, может её сделаешь какойнибудь другой, хоть цветом выдели, а то две одинаковых кнопки.
и есть одна интересная идея, можешь ли сделать так что при нажатии на кнопку мышки в полноэкранном режиме стали видны тулбар и опции.
значит нужна поправка скорости в эмуляторе.
и её регулировка тоже :)
Речь о том, сколько машинных циклов успевает исполниться за заданное число отсчетов таймера (или сколько отсчетов сделет таймер, пока процессор выполняет такие-то инструкции). Частота тактирования таймера -- постоянна, а длина машинного цикла в 8080 непостоянна. Причем это еще накладывается на внутреннюю архитектуру Вектора, которая не позволяет процессору делать все, что ему вздумается. Поправкой типа плюс-минус 1 тут ничего принципиально не изменишь.
А по тесту устройств - быстроват слегка.
По моему таймерному тесту тоже быстроват -- он считает сверху вниз. b2m опережает ожидаемое значение всегда на 2 отсчета, то есть на 4 процессорных такта.
Судя по тому, что замаскированный под игру Exolon тест на исправность таймера всё же работает, ошибка кроется в моменте запуска, или может быть считывания. Если бы таймер работал несинхронно с процессором, в Эхолоне ползли бы белые полосы по экрану и вообще выглядел бы он дурно.
Работает ведь Ехолон?
Выходит, что b2m медленноват слегка
Не совсем. Если ты запускал тест, то видел, что все считанные значения на 2 меньше требуемых. Я анализировал тест, и мне кое-что не совсем понятно. А именно: имеем две команды OUT, одна из которых загружает счётчик, другая считывает значение. Моменты начала выполнения этих команд (а значит и несколько смещённые моменты выдачи процессором сигнала записи в порт) отличаются на 100 тактов процессора, т.е. на 50 тактов счётчика. Значения счётчика, однако, судя по тесту, должны отличаться на 48. Я знаю, что реальное значение счётчика загружается из временного регистра по следующему за командой загрузки такту, т.е. вместо уменьшения имеем установку значения счётчика, таким образом за 100 тактов процессора начальное значение, исходя из моих рассуждений, уменьшается на 49. А реально - на 48. Где загвоздка?
А по тесту устройств - быстроват слегка
Тут тоже не совсем ясно. Есть ещё diablo4, который перестал правильно устанавливать палитру, после того как я доделал мультиколор для b-ice. Разбирательство выявило, что последний цвет палитры устанавливается когда отображение бордюра уже кончилось и началось отображение экрана. Причём нехватает буквально пары сканлиний. В этой проге много команд OUT, но я не верю, что они выполнялись за не кратное 4-м количество тактов. Таким образом, тут эмулятор медленноват.
А вот в supkalah в качестве защиты от отладки используется такой приём: правильный переход осуществляется по прерыванию, а не в конце цикла. Однако цикл почему-то выполняется несколько большее количество раз, и в результате имеем неправильное значение регистров, что сказывается на дальнейшем выполнении программы. Тут эмулятор оказался быстрее, чем надо.
У меня загрузка выставляет только признак того, что счетчик загружен, разрешение счета включается по следующему положительному перепаду таймерного клока. Таким образом, первый раз единичка вычитается на второй после момента загрузки импульс таймерного клока. Если я опять ничего не перепутал.
Суперкалах у меня на DE1 нормально запустился и работает, а вот палитра в Диабло4 мне не кажется правильной. b2m, предлагаю считать diablo4 глючным творением -- мультиколор важнее.
Добавлено через 2 минуты
Хмм, а diab4 ведь не использует таймер..
замаскированный под игру Exolon тест на исправность таймера
Незадолго перед закрытием омского "Гепарда" у них в каталоге появился exolon-z - версия exolonа, работающая на векторе с их адаптером z80. Если бы она где-то откопалась, то, похоже, могла бы использоваться в качестве одного из тестов вектора с z80.
А не может быть такого, что diabl4 была написана на эмуляторе ve27a? И на реале не проверялась? ve27a считает, что шина адреса ОЗУ палитры волшебным образом отключается от записывалки во время сканирования экрана. А на самом деле ни разу не отключается.
svofski
А особенности работы узла палитры в обычном 06ц и 06ц.02 тебе известны? Вроде где-то было написано, что в 02 можно было писать (успешно) в любое время?
Таким образом, первый раз единичка вычитается на второй после момента загрузки импульс таймерного клока. Если я опять ничего не перепутал
Вот я и говорю, что за 100 процессорных тактов "не вычитаться" будет только один раз, а реально получается два.
ivagor, нет на самом деле. Особенно про ц.02. Просто где-то полгода назад мы с b2m в переписке пытались докопаться до правды-матки. И в процессе докопа пришли к выводу, что шина на самом деле одна, никакой магии нет и писать можно в любое время. Но надо понимать (это программисту Вектора надо понимать), что в момент сканирования экранной области записываться будет регистр того цвета, который сканируется в настоящий момент. И что индекс цвета бордюра -- это буквально те же самые проводки, что и адрес записи в ОЗУ палитры во время бордюра/обратного хода луча, а не два разных карла маркса.
Если бы это было доходчиво объяснено в документации с самого начала, многие люди не ломали бы себе голову.
Кстати, попробовал на DE1 Реверси, нифига не работает. Точно так же рисует "FRA & FV" (забавное по-моему название, кстати) и ни на что больше уже не отвечает. Перегруженный обработчик прерывания, который пытается сделать слишком много и не успевает толком опросить клавиатуру?
Добавлено через 3 минуты
Вот я и говорю, что за 100 процессорных тактов "не вычитаться" будет только один раз, а реально получается два.
Чего-то не пойму. По-моему должно не вычесть два раза. Один Tce на загрузку, второй Tce на разрешение счета. Итого пропускается два таймерных, четыре процессорных. Не так?
второй Tce на разрешение счета
Надо по Шахнову уточнить.
Вроде где-то было написано, что в 02 можно было писать (успешно) в любое время
Написано в том-же Вектор User-15, но про Вектор Турбо Плюс.
Упс, ivagor, так это твой bmpview и diabl4? Тогда ты ведь должен знать -- работало на реале или нет?
Про программирование палитры - сформулирую иначе (не буду трогать момент вывода изображения)
На 06ц не всегда получалось удачно записать с 1го раза в палитру даже на бордюре (для моего это именно так).
На 06ц.02, или может не на нем, а просто на отдельных экземплярах вектора, возможна была запись с меньшего количества раз.
Роман Пантелеев делал страничку с докой по этому вопросу, но эта страничка была доступна довольно недолго, себе например я ее не сохранил.
Написано в том-же Вектор User-15, но про Вектор Турбо Плюс.
Было где-то именно про 02.
Добавлено через 1 минуту
Упс, ivagor, так это твой bmpview и diabl4? Тогда ты ведь должен знать -- работало на реале или нет?
А, это вот о чем идет речь! Нет, конечно, не работало. SES тогда же это обнаружил, насколько я помню.
Добавлено через 5 минут
А что, они где-то остались доступны?
Это вообще темная лошадка. Я думаю, что там какая-то была фигня со схемой, которая формировала сигнал записи. Выражаясь современным языком, она работала на глитчах. Возможно, что в более поздних вариантах там чего-то пофиксили и заработало с одного раза.
Про bmpview -- почему "конечно"? Просто потому что время такое было, или потому что там используется что-то не поддерживаемое железом?
Про bmpview -- почему "конечно"? Просто потому что время такое было, или потому что там используется что-то не поддерживаемое железом?
"Конечно", потому что я не использовал проверенные на реале, ранее не подводивишие процедуры программирования палитры, а экспериментировал. Сначала, правда, я думал, что это будет работать на железном векторе, и даже вроде не совсем адекватно отрагировал на сообщение SESа о неработоспособности на реале, но потом смирился. Время реалов, к сожалению, прошло. Но все равно, теперь я использую при программировании палитры стандартные процедурки (хотя в некоторых игршках на реале могли бы быть сюрпризы. К сожалению вялая попытка реанимации моего 06ц прошла неудачно).
Понятно. Ну вот, а мы с b2m зря переживаем значит.
Реверси, правда, все равно работать не хочет. Ну и чорт с ним.
По поводу ви53.
Режим 2, на GATE и CLK приходит одно и тоже.
Как я понимаю, только в следующем такте после записи, по GATE (на котором CLK) запустится счетчик и еще через такт он вычтет первое значение. Итого искомые 2 такта.
Значит я правильно понял то, что сам полгода назад написал :biggrin:
GATE (на котором CLK) запустится счетчик
На GATE там всегда логическая еденица, а режим 2 это делитель частоты и его не надо запускать стробом (через GATE), в отличие от режимов 1 и 5.
Представь некий период времени, в котором помещается три тактовых импульса: по первому тактовому импульсу счётчик грузится, по второму вычитается и по третьему тоже. Итого лишь на одно вычитание меньше, чем количество тактовых импульсов.
Нашел бумажную схему, в ней я даже цифры различаю. Оказалось что 29 - это /СБРОС (все же не все время 1 :)). Ну, короче, я облажался и на вышеприведенный бред можно не обращать внимания (в т.ч. по режиму 2 - писал про него, а ориентировался на рисунок из книжки по реж. 1).
Вобщем, выложил я новую версию, supkalah запускается, таймер я подправил SkyNet теперь не пишет, что она из эмулятора запущена. Но вот стало ли лучше - вопрос.
b2m, сделай теперь пожалуйста то о чём я говорил здесь http://zx.pk.ru/showpost.php?p=154172&postcount=87
очень нужно.
стало ли лучше - вопрос
Нашёл баг в новой версии таймера, эмуль перезалил.
XobbiMan
25.09.2008, 11:10
Вот, нарисовал одну иконку (надо еще подумать другие варианты) для эмулятора.
XobbiMan, неплохо, но эмулятор всётаки называется emu.
нарисовал одну иконку
Может лучше от старого эмулятора взять?
думаю эта иконка лучше, а можешь чтонибудь подрисовать например рожицу улыбающиюся на экране, типа смайлика и если влазиет клавиатуру снизу.
XobbiMan
25.09.2008, 11:37
Может лучше от старого эмулятора взять?
Можно :)
а как вам такая иконка ?
переделал старую немного.
XobbiMan
25.09.2008, 12:00
а как вам такая иконка ?
Неплохо, вот только когда она в маленьком состоянии (особенно в углу окна программы - клавиатуры и букв почти не видно)
ну в углу она будет смотреться как мониторчик с чемто белым на нём, что вобщемто нормально.
я немного с цветом напортачил в первый раз, поэтому перезалил иконку.
вот если мелко я сделал 64х64.
Хотелось бы иметь возможность отключать внешние устройства: МПЗУ, квазидиск, дисководы. Может я чего-то не знаю, но на данный момент, квазидиск можно отключить только выкинув файл vector.edd из папки вектора перед запуском эмулятора. А дискету уж если засунул, то уже и не достать, только на другую поменять можно. Или перезапускать эмулятор.
b2m, пообщавшись с Tim0xA, мы пришли к выоду что лучше сделать это так:
чтобы их отключать можно например на иконке квазидиска или загрузчика щёлкнуть правой кнопкой мыши и они отключаются.
можно даже чтоб при этом на иконку накладывался красный крестик, мол закрыто.
b2m, большое спасибо за доделаный корвет.
да ещё, добавь в эмуль комбинацию клавишь Alt+X это выход чтоб был.
не знаю только у меня такая ошибка или нет, но когда я закрываю эмуль особенно из вектора то звук при этом заедает на секунды 3.
b2m
1) можно сделать так, чтобы образ квазидиска открывался, как образ диска с возможностью установить/снять параметр "Только для чтения"? Сейчас в образе квазидиска изменения не сохраняются.
2) Кстати, только что проверил, а параметр "Только для чтения" для дисков не действует.
3) Мне кажется, что смену образа квазидиска не нужно сопровождать RESET. ОС может быть запущена с диска и при этом должна остаться возможность смены образа КД.
1. можно сделать в конфиге так:
...
ramdisk="Vector06c\vector.edd"
ramsave="Vector06c\vector.edd"
}
Предполагалось, что сохранение будет в другой файл, и если изменения нужны, то просто скопировать новый файл на место старого. Иначе возможны ситуации, когда что-нибудь глюкнет и квазидиск сотрётся, а копии сделано не было.
2. Надо будет доделать :) Наверное, хотел сделать, когда добавлял диалог, да забыл.
3. Я когда делал попробовал один раз без сброса, Вектор сглючило, и я подумал, что будет лучше со сбросом. На реале всё равно такой возможности не было.
Еще одна неработающая в b2m игра (какие-то глючки с палитрой). В эмуляторе Ramiros-а работает.
какие-то глючки с палитрой
Команд, задающих палитру, не обнаружено. Скорее всего это программа для Вектор-Старт или Криста. Можно, конечно, палитру после старта эмуляции задать (она и сейчас задаётся, но аналогично той, которую устанавливает загрузчик).
Сделал палитру по умолчанию - стандартные 16 цветов (т.е. когда порт 0Ch не используется вообще). Для программ, подобных вышеуказанной.
Команд, задающих палитру, не обнаружено. Скорее всего это программа для Вектор-Старт или Криста.
В posadkе используются порты 84h и 85h. По информации из Vector-USER 24 это порты кристы-2, в частности 85h - порт управления видеоадаптером.
b2m, чтото эту игрушку, посадка, жестоко глючит в твоём эмуляторе.
на заставке вообще ничего не видно, только музыка играет.
и в самой игре многих цветов нет.
ZEman, открывай через File/Open, иначе загрузчик устанавливает свою палитру, в которой всего два цвета. Как уже сказано выше, это программа для Кристы-2.
ZEman, кстати, ты же из Омска. В Омске была фирма SPASE CORP, которая занималась ПО для "Вектор-06Ц" и "Криста-2". Полазь по городским форумам, закинь туда вопрос, может у кого-нибудь остался какой-нибудь софт на кассетах или дисках? У тебя столько энтузиазма на поприще эмуляции, ты просто обязательно должен что-нибудь новенькое раскопать :)
XobbiMan
29.09.2008, 17:02
Еще одна неработающая в b2m игра (какие-то глючки с палитрой). В эмуляторе Ramiros-а работает.
Вложения
Тип файла: zip posadka.zip (3.2 Кб, 4 просмотров)
Прикольно.
Помню я оригинал такой видел на ZX-Spectrume.
И в свое время тоже написал (без начала и конца) клон, но на бейсике, правда бомба не весь столбец взрывала, а только блок ;)
Tim0xA, если честно я даже незнаю откуда начинать искать.
у нас в Омске я из компов видел только спектрум, атари и агат, вроде ещё искру видел.
остальное 386 и тому подобные у других были.
никаких векторов, бк и тому подобных я в жизни даже не видел и узнал о них только с помощью эмуляции.
"Адаптированный" для вектора вариант игры posadka
1.10.2008 Удалил вложение.
Палитру сделал почти как в бейсике. Также теперь будет корректно запускаться из МикроДОС и, теоретически, появится возможность запустить ее на векторе с кишиневским адаптером z80.
В Омске был центр Гепард, SPASE CORP. это вроде кто-то из них.
Tim0xA, если честно я даже незнаю откуда начинать искать.
На форумах конечно же! Можно искать темы "Ностальгия", "Ваш первый комп", "Вектор-06ц", "Старые компы", "Барахолка" и т.п. Практически на любом форуме сейчас есть поиск. Более того, если этих тем нет, то можно самому их начать.
никаких векторов, бк и тому подобных я в жизни даже не видел и узнал о них только с помощью эмуляции.
Ты недооцениваешь свой город. В Омске для Вектора был разработан свой квазидиск, картридж большого объема, схема подключения Z80, схема подключения AY, часы реального времени, контроллер дисковода, программатор ПЗУ, был написан пакет системных утилит "Криста-Вектор" и это навскидку, список наверняка можно продолжить. Мало какой город может похвалиться такой славной историей векторостроения. Тут только копнуть. Дерзай, Zeman! :)
Добавлено через 7 минут
"Адаптированный" для вектора вариант игры posadka
Гуру адаптации тут как тут :) Выложу в картотеку.
тут выложил прошивку от компа "Нейва" (клон Корвета). Если есть желание можешь его тоже сэмулировать.
http://www.zx.pk.ru/showpost.php?p=155320&postcount=13
Если есть желание можешь его тоже сэмулировать
А насколько близкий клон? Информация где-нибудь есть? А то, что это ученическое место, даже лучше :) Судя по вики, все клоны Корвета были стопроцентные, просто выпускались на разных заводах.
Вот тут две фотки Нейвы лежат:
http://cossackos.narod.ru/1.JPG
http://cossackos.narod.ru/2.JPG
Я не знаю, чем эта Нейва отличается от Корвета, но с аналогичной конфигурацией это ПЗУ работает, и даже грузится с диска.
Я нашёл аналогичный файл в эмуляторе Ерохина. 1-в-1 Корвет 2.0 :)
А насколько близкий клон? Информация где-нибудь есть? А то, что это ученическое место, даже лучше :) Судя по вики, все клоны Корвета были стопроцентные, просто выпускались на разных заводах.
Скорее всего они полностью совместимы, выпускавшиеся на разных заводах.
Просто выложил, потому как разные ПЗУхи(кроме фонта). У тебя версия 1.0, а эта 2.0 Вот и написал, вдруг понадобится.
Надо бы сделать конфигурации для всех имеющихся на данный момент вариаций ПЗУ Корвета (а их в эмуляторе Ерохина целых пять).
Прицепил к эмулятору библиотеку GDI+, а если её на компе нет (например в W2K), то сохранение скриншота будет как раньше. Параметры сохранения картинки используются по-умолчанию, и к сожалению, сохранение в gif получается "в крапинку". А вот в png - нормально, и размер небольшой, и цвета сохраняются.
Размер скриншота стал 576х432? Есть какой-нибудь параметр, чтобы установить 384х288?
В меню, Size to ..., заодно и увидишь, как будет выглядеть :)
Да, я уже все понял, это 100% устраивает.
Одно пожелание - чтобы эмуль запоминал то значение, которое я ввожу в поле "Size to..." или хотя бы по-умолчанию вбить туда 384х288.
Tim0xA, по поводу "эмуляция джойстиков: Успид, джойстик С, джойстик П" - в интернете информации не нашёл.
Джойстик-С - Вектор-USER 4, только раскладку битов надо уточнить по Вектор-USER 8 (в 4 номере, к слову, написано про переделку Вектор-старт 1200 в вектор-06ц).
Джойстик-П - Вектор-USER 8.
Джойстик-ПУ (вроде это то же самое, что УСПИД) - Байт 8.
ivagor, спасибо, я как раз только что перечитал все выпуски Вектор-User:
Джойстик-С VU04-8.djvu
Джойстик-П VU07-2.djvu
Про УСПИД нигде не нашёл, но если это Джойстик-ПУ, то про него я тоже уже прочитал в Байте.
только раскладку битов надо уточнить по Вектор-USER 8
Джойстик-П - Вектор-USER 8.
Джойстик-П VU07-2.djvu
Блин, как обычно, я ошибся, номер 7, а не 8.
Еще одна неработающая в b2m игра "Soko-Ban" http://sensi.org/~svo/scalar/ware/430/ от автора ранее упоминавшейся "Реверси" http://sensi.org/~svo/scalar/ware/367/ которая также не работает. У Ramiros-а работают обе игры.
b2m, спасибо за скриншоты, лучше всего они смотрятся в TIFF и PNG, а то раньше только BMP был а они здоровые.
хочу спросить, а можешь добавить ещё менюшку для изменения разрешения экрана, только на этот раз для полноэкранного режима ?
так между прочим очень удобно, не надо наставлять кучу строчек с разрешениями типа 800х600, 1024х768 и.т.д, просто сам вводишь нужное и пользуешься.
XobbiMan
02.10.2008, 13:38
b2m,
В твоей гостевой есть очень интересное последнее сообщение (о продаже 10-15 единиц Башкирия 2М), может уже состыковался с продавцом?
сохранение скриншотов из полноэкранного режима не действует, даже если нажимать Ctrl+Shift+s
сохранение скриншотов из полноэкранного режима не действует, даже если нажимать Ctrl+Shift+s
Так и задумано, в полноэкранном режиме диалоги выглядят странновато.
Еще одна неработающая в b2m игра
Выяснилось, что обеим играм не нравится обнуление регистра SP после сброса. Честно говоря, до сих пор я был уверен, что после сброса обнуляются все регистры. Или я не прав? Например в коде Z80, который писал не я, все регистры устанавливаются в 0xFF, кроме PC естесственно, который обнуляется. Кому верить?
Цитирую по Intel8080.pdf (где скачивал не помню, размер 6449949 байт).
Страница 36 из 244 (внизу листа в pdfке написан номер страницы 2-13)
START-UP OF THE 8080 CPU
When power is applied initialy to the 8080, the processor begins operating immeditely. The contetnts of its program counter, stack pointer, and the other working registers are naturally subject to random factors and cannot be specified. For this reason, it will be necessary to begin the power-up sequence with RESET.
An external RESET signal of three clock period duration (minimum) restores the processor's internal program counter to zero. Program execution thus begins with memory location zero, following a RESET. Systems which require the processor to wait for an explicit start-up signal will store a halt instruction (EI, HLT) in the first two locations. A manual or an automatic INTERRUPT will be used for starting. In other systems, the processor may begin executing its stored program immediately. Note, however, that the RESET has no effect on status flags, or on any of the processor's working registers (accumulator, registers, or stack pointer). The contents of these registers remain indeterminate, until initialized explicitly by the program.
Тупо процитировал все.
Помню, что на реале игры FRA&FV работали. Похоже все-таки при RESET состояние регистров не remain indeterminate, а, скорее RESET has no effect on status flags, or on any of the processor's working registers.
скорее RESET has no effect on status flags, or on any of the processor's working registers
Ну тогда всё сходится :)
Добавлено через 10 минут
Исправил.
Ну тогда всё сходится :)
Итак, ждем новую версию? А то у меня есть папка с десятком файлов, которые ни в одном эмуляторе не работают (два из них получены от ivagor-а еще 8 лет назад и, как он говорил, работали на реальном векторе). Я помню, это "caeon" и "pillars", но пилларсов уже целая куча накопилась с разными модификациями. Вообщем, если интересно, то архив прилагаю. Не исключено, что там есть и "битые" файлы. Но вот например "Нарды" с интро от SES в какой-то версии b2m у svofski запускались, он даже скриншот с них делал, а последняя версия на этой игре глючит.
О, вижу, новая версия уже готова...
Попрыгун работает, но там какой-то странный видеоэффект.
Попрыгун работает, но там какой-то странный видеоэффект.
Да, уже запускается. Видеоэффект - это данные в экранной области справа-внизу?
Кстати, по поводу записи данных в квазидиск.
Я пробовал написать в конфиге
ramdisk="Vector06c\vector.edd"
ramsave="Vector06c\vector.edd"
но это ничего не дало.
Пробовал
ramdisk="Vector06c\vector.edd"
ramsave="Vector06c\vector1.edd"
все равно образ не обновляется.
Вообщем, я хочу собрать "человеческий" образ КД для эмулятора, т.к. тот что идет в стандартной поставке содержит старую версию ОС, которая практически ни на что не годна, многого не умеет. А на КД нужно залить основные системные утилитки типа NC,SYS,LZ и т.д. чтобы все было под рукой.
DIZR.ROM - еще один вариант рекламки DIZZY от SUNAMI.
Некорректное расширение ROM, должно быть СOM, т.к. запускаеться должен из под ДОС.
Для запуска из под загрузчика можно использовать вот этот вариант
11.10.2008 Удалил вложение
nardy с intro от SES работают в tdv! Вот как раньше эмуляторы делали ;)
все равно образ не обновляется
Попробуй абсолютный путь, похоже опять проблема с текущим каталогом.
Добавлено через 55 минут
Нарды тоже заработали.
b2m
Расскажи, интересно же. Как я понял, до правки
1588 call A000 (после mvi a,3F/out 10)
выполнялся как что-то вроде косвенного перехода (т.е. адрес перехода брался откуда-то с КД и получался E5E5?)
Добавлено через 24 минуты
KRISTI как и DIZR нужно запускать из ДОС.
Расскажи, интересно же
Обычная ошибка, сигнал СТЕК был установлен там, где его быть не должно было, а именно, при чтении адреса подпрограммы. Удивительно, что до сих пор нигде не проявлялось.
Добавлено через 36 минут
KRISTI как и DIZR нужно запускать из ДОС
Странно, если после загрузки с диска (lines) дать команду d(ir), то она уже не работает, а если сразу запустить, то работает. Так что, не факт, что её с диска запускать надо.
Добавлено через 38 минут
Хотя нет, сейчас заработала. Как-то она через раз запускается...
Удивительно, что до сих пор нигде не проявлялось.
При отладке фрагментов, использующих обращение к КД через стек, сталкивался с чем-то подобным, поэтому меня этот вопрос сильно заинтересовал. Не знал на что грешить, думал может в отладчике показывает не совсем корректно. В чистом виде, чтобы написать "багрепорт" эту штуку не отлавливал, только сейчас стало понятно.
Вот, к слову, еще про стек и отладчик
1.2. Очень специфическое поведение при включенном режиме обращения к квазидиску как к стеку после выполнения команд push или pop. То что при этом показывается в окне дизассемблера и дампа памяти имеет мало общего с действительность, т.к. программа работает нормально, но такие фрагменты кода приходится отлаживать "вслепую". Конечно, можно отнестись к этому философски и считать "антихакерской фичей".
пока не проверял, может ты это уже пофиксил.
Так что, не факт, что её с диска запускать надо.
Если это про kristi и dizr (я не совсем понял про какие lines речь), там есть такое (не сильно далеко от старта)
ei / hlt / di
если в 38h ничего нет, то до di дело не дойдет. Т.е. ДОС не обязателен, теоретически сойдет и монитор-отладчик, но загрузчик не обеспечит чего-нибудь по адресу 38h.
может ты это уже пофиксил
Я думаю, ты имел ввиду, чтобы дамп в отладчике показывал содержимое квазидиска при чтении через стек. Нет, пока там показывается только то, что "видит" процессор при чтении собственно команды или "нормальном" чтении.
там есть такое (не сильно далеко от старта)
ei / hlt / di
А вот это уже интересно. Надо бы учесть такую фичу при открытии .rom файлов. Тогда эти проги тоже нормально будут работать, наверное.
Я думаю, ты имел ввиду, чтобы дамп в отладчике показывал содержимое квазидиска при чтении через стек.
Не совсем, хотя это тоже было бы неплохо :).
Попытаюсь описать словами, хотя лучше бы еще привести фрагмент кода, но это потом (надо найти и еще раз проверить): при включенном обращении к КД стеком и после выполнении pop или push отладчик в окне дизассемблирования показывает явно левые вещи - якобы изменяется содержимое близлежайших ячеек, но на самом деле такого (т.е. изменения содержимого ячеек основного ОЗУ) судя по работоспособности программы, не происходит.
Теперь понял. В той версии, что на сайте, должно быть нормально. Я, правда, опять немного поменял, но не выкладывал на сайт. Я учту эту фичу.
KRISTI как и DIZR нужно запускать из ДОС
Теперь не нужно из ДОС, можно просто File/Open. Я поставил команды 0000:jmp 100h и 0038:ei/ret.
b2m, обнаружил баг в новых версиях эмулятора.
эмулятор запоминает пути просто из последней посещённой папки а то что записано в конфиге игнорирует.
например открыл я диск для башкирии, поиграл, потом лезу в вектор выбираю там открыть диск для вектора, а он его ищет в директории башкирии.
или например открыл driller tank для pk8000, потом лезу в вектор хочу открыть там ром файл с игрой а он смотрит ром файлы в папке от pk8000.
исправь это пожалуйста.
проверил на версиях за 24.09.2008 - там пути запоминает точно.
P.S.
небольшое объяснение, я не держу один эмулятор для всех машинок.
в каждой директории какогото компа у меня находится отдельная копия эмулятора с нужными конфигами.
в каждой директории какогото компа у меня находится отдельная копия эмулятора с нужными конфигами
И какая от этого польза?
баг в новых версиях эмулятора
Исправил.
b2m, на сайте, на странице "Файлы" в текст "Универсальный эмулятор (Башкирия-2М, Апогей, БК-0010, Вектор-06ц, Веста, Корвет, Лик, Львов ПК-01, Микро-80, Микроша, Орион-128, Орион-Про, Партнёр, Радио-86РК, Специалист, Специалист-МХ, ЮТ-88) без образов дисков" надо бы добавить "Вектор Старт-1200". на сегодняшний день это единственный эмулятор, который эмулирует этот ПК (пусть даже пока с несовсем корректной палитрой).
Mick, поллитру за палитру! ;)
надо бы добавить "Вектор Старт-1200".
Добавил :)
b2m, ещё один баг, в конфиге pk8000, в фоновом режиме не играет музыка.
проверил на игрушке Driller Tank
Это не баг, это фича :).
Добавь третей строкой в конфиг ПК8000
main.globalsound=1
а зачем так сделано, если не секрет ?
А затем, что не всем нравится музыка в фоне. К тому-же - совместимость со старыми версиями :)
XobbiMan
07.10.2008, 17:40
Добавь третей строкой в конфиг ПК8000
main.globalsound=1
Добавил в FAQ
(Если уже у кого-то собрался FAQ для эмулятору для какого-то конкретного эмулируемого компьютера, добавьте, Ибо скажем во Вектору я тетрис-3Д флоппик подключал подключал а как стандарный А: вижу без игры так и вижу - ну я все равно размерусь, или скажем по другим моделям, возможно там как бы и надо знать особенности Монитора или диалекта Бейсика, но основные команды загрузки и старта программ, думаю можно внести в FAQ)
как стандарный А: вижу без игры так и вижу
Скорее всего ты загружался с КД. В Базисе приведена инструкция, как запустить эту игру (фактически это инструкция по загрузке с fdd, также она приведена в FAQ эмулятора b2m).
XobbiMan
07.10.2008, 17:58
ivagor,
ну я кликал кнопку флопа А - выбирал *.FDD - далее жал на клавиши, загружался ДОС, DIR командой не нашел игру.... пошел я еще раз инструкцию полистаю (что-то не то делаю, раз все работает)
Все оказалось элементарно, надо нажать F1+F2+F11 и держать сколько долей секунд, чтобы на экране появилась иконка "флоппик" (ведь сам когда про это писал, но только насчет ROM и инонки "Микрушка"). И это все что очень редко Вектор эмулирую (надо наверстать)
Mick, поллитру за палитру! ;)
Пока разъем не нашел, вернее заказал - привезут сделаю, я же помню :)
XobbiMan
08.10.2008, 17:38
b2m,
Хотел спросить.
Возможно ли прикрутить какой-то КОИ-8 Font к дебугеру, чтобы dump памяти более читаем был?
Возможно ли прикрутить какой-то КОИ-8 Font к дебугеру
Да, выбор кодировки не помешал бы. :)
b2m, возможно ли сделать так, чтобы образы дисков открывались эмулятором не в монопольном режиме? Хотелось бы чтобы в процессе работы эмулятора был доступ к образу FDD при помощи FAR-плагина - добавлять/удалять файлы. Сейчас для этого приходится выключать эмулятор, что не совсем удобно.
Эмулируемая ОС может неадекватно отреагировать, если данные на диске вдруг изменились без её ведома. :) Чтобы работал совместный доступ на запись к файлу, необходимо, чтобы обе программы открывали файл в режиме share deny none, так что даже если я и сделаю так, не факт что будет возможна запись из твоего FAR-плагина.
Как вариант - можно временно открыть другой диск, переписать на первый диск что нужно, потом снова открыть его в эмуляторе.
Эмулируемая ОС может неадекватно отреагировать, если данные на диске вдруг изменились без её ведома. :)
Пусть реагирует как хочет, это уже второй вопрос. Я на паузу буду ставить ;) Просьба остается в силе.
Чтобы работал совместный доступ на запись к файлу, необходимо, чтобы обе программы открывали файл в режиме share deny none, так что даже если я и сделаю так, не факт что будет возможна запись из твоего FAR-плагина.
Я открываю один и тот же образ в Far и в TC, пишу и вижу изменения в обоих менеджерах, значит возможна?
Как вариант - можно временно открыть другой диск, переписать на первый диск что нужно, потом снова открыть его в эмуляторе.
И так делаю тоже.
Error404
13.10.2008, 18:35
Пусть реагирует как хочет, это уже второй вопрос. Я на паузу буду ставить ;) Просьба остается в силе.
Я открываю один и тот же образ в Far и в TC, пишу и вижу изменения в обоих менеджерах, значит возможна?
И так делаю тоже.
Файл-менеджеры "лочат" файл образа диска только на момент обращения к нему (постоянно открывают/закрывают файл), поэтому оба работают.
А система эмулируемого ПК просто попортит файлы, если будет писать в образ параллельно с файл-менеджером (т.к. посчитает свободным место, куда файл-менеджер только что что-то записал), т.к. хранит в ОЗУ эмулируемой машины карту занятости секторов. Для обновления этой карты в, к примеру, CP/M нужно вызывать фукции сброс+выбор диска (то, что оно делает если нажать ctrl+C в консоли).
А система эмулируемого ПК просто попортит файлы, если будет писать в образ параллельно с файл-менеджером (т.к. посчитает свободным место, куда файл-менеджер только что что-то записал), т.к. хранит в ОЗУ эмулируемой машины карту занятости секторов. Для обновления этой карты в, к примеру, CP/M нужно вызывать фукции сброс+выбор диска (то, что оно делает если нажать ctrl+C в консоли).
Проверил, действительно, если открыть один образ FDD, загрузить микродос, вывести список файлов, а потом подключить другой образ и снова вывести список файлов, то получаем список с первого диска. Не знал такого прикола.
Как вариант - можно временно открыть другой диск, переписать на первый диск что нужно, потом снова открыть его в эмуляторе.
По причине описанной выше, это метод не совсем подходит. Если читать с диска, то да, а если записывать на диск, то будут проблемы. Я пару раз натыкался на это, но не понимая природу ошибки, предпочитал чаще все-таки перезагружать эмулятор.
Вопрос снят.
По причине описанной выше, это метод не совсем подходит
Даже с учетом
нужно вызывать фукции сброс+выбор диска (то, что оно делает если нажать ctrl+C в консоли).
?
Даже с учетом
?
в микроДОС вызов Ctrl+C ничего не дал
УС - С - выполнить "горячий старт" МикроДОС. В этом
случае выполнение текущей программы прек-
ращается, файл консоли вывода закрывается,
выполняется процедура "горячего старта" из
базовой системы ввода/вывода (СБВВ). Ни
обращений к дискам, ни сброса дисковой системы
не происходит: и текущий диск и текущий код
пользователя остаются прежними.
Error404
13.10.2008, 22:40
?
Я имел в виду ALV. И функции 13-14 BDOS.
Насколько я помню, в классическом ССР CP/M нужно нажимать ^C (код клавиши 3) после каждой замены диска в дисководе чтобы CP/M перечитала каталог и сформировала ALV (возможно еще и CSV, не помню), иначе возможны глюки. Ну и еще в зависимости от реализации - flush дискового буфера (в большинстве реализаций используется буфер более чем 128 байт, после смены диска он неконсистентен). А "лево" на лету дописанные в образ файлы - это аналог смены диска.
нажимать ^C (код клавиши 3) после каждой замены диска в дисководе чтобы CP/M перечитала каталог
Операциям чтения каталога в CP/M это не нужно и даже операции чтения файлов не используют ALV, а вот чтобы можно было записывать данные, то да, система должна пересоздать таблицу ALV. Если диск поменять и попытаться открыть файл на запись, система заметит несовпадение CSV и скажет, что диск ReadOnly.
Error404
14.10.2008, 00:53
Операциям чтения каталога в CP/M это не нужно и даже операции чтения файлов не используют ALV, а вот чтобы можно было записывать данные, то да, система должна пересоздать таблицу ALV. Если диск поменять и попытаться открыть файл на запись, система заметит несовпадение CSV и скажет, что диск ReadOnly.
Все так. Забавный пример с Ориона. Классическая CP/M образца 1991 года (клон с Корвета, кстати) не вызывает BDOS 13-14 при чтении каталога в CCP командой DIR, если не сделать ^C (соответственно, не вызывается и SELDSK BIOS, а как BIOS должен узнать, что дисковый буфер, а он там 2к, пора бы сбросить и перечитать?). Поэтому уже после замены диска успешно читает старый каталог предыдущего диска (из дискового буфера). И дальше - функц. 15,20 (Open, Read) ССР пытается запускать файл оттуда, где его уже нет.
В-общем, это эффект известный. Я отчасти и поэтому тоже не стал шарить доступ к файлу, открытому эмулятором.
да чё вы мучаетесь, сделайте так как это сделано в эмуляторе корвета Virtual Korvet.
добавьте просто опцию менеджер дисков, и в нём уже добавляйте удаляйте файлы, правда делать это всёравно лучше при остановленном эмуляторе.
Классическая CP/M образца 1991 года (клон с Корвета, кстати) не вызывает BDOS 13-14 при чтении каталога в CCP командой DIR, если не сделать ^C
Какая-то неправильная CP/M. На Башкирии было всё нормально, после смены диска каталог читался нормально, и файлы запускались, только запись выдавала ошибку Bdos Err On A: R/O
Error404
14.10.2008, 12:37
Какая-то неправильная CP/M. На Башкирии было всё нормально, после смены диска каталог читался нормально, и файлы запускались, только запись выдавала ошибку Bdos Err On A: R/O
Это свойства BIOS (буферизация доступа). В CP/M Башкирии BIOS буферизировал доступ к диску? Тогда такой эффект должен повторяться - ведь BIOS-у никто не сказал, что при очередном обращании на чтение сектора диск уже поменялся, и он спокойно выдает данные из буфера.
Буфер был, но перед чтением каталога там почему-то вызывается операция HOME (на нулевую дорожку), она-то и сбрасывает буфер.
Интересно, польстило ли бы S.E.S.-у, если бы b2m сделал у себя эмуляцию ВМ1 по докам только ради того, чтобы мы могли посмотреть его интро к Колобихе? :biggrin:
Исправил ошибки в отладчике.
Очень желательно добавить ускорение (по F9) в конфигурации ПК6128ц, по аналогии с конфигурацией вектора, а то из wav грузить долго.
Также желательно поправить выгрузку в wav в конфигурацию вектора с z80, а то wav записывается, а в нем тишина.
Ускорение добавил, а в wav вроде нормально пишется.
да я уже давно жду регулировку скорости работы эмулятора.
ivagor, а что уже есть какието файлы для ПК6128ц ?
На ПК6128 должны работать большинство программ вектора (попробовал seggs, работает), за исключением некоторых, в число которых попали, к сожалению, driller и обновленные версии color ball и cannon ball (2 последние вроде Tim0xA пока не выложил, это даже хорошо). Поправить это быстро, проблема совершенно не принципиальная.
Tim0xA, может добавишь в ПЗУ ПК6128ц загрузку из внешнего ПЗУ? Можно даже зашитым бейсиком пожертвовать.
Tim0xA, может добавишь в ПЗУ ПК6128ц загрузку из внешнего ПЗУ? Можно даже зашитым бейсиком пожертвовать.
Я собирался разобрать этот загрузчик, усовершенствовать, но пока на первое время можно просто переименовать PK-6128c.cfg в Vector06c.cfg и загружать ROM файлы из File-Open
Еще про bolder. Он перестал работать (запускается, показывает заставку, но при старте игры зависает) в последних версиях b2m (речь об оригинальной некракнутой версии, которую нужно грузить из wav). Предположительно это связано с введением "помощи для старта некоторых com как rom" (например dizr), причем похоже это перешло и в ПК6128. В версии b2m от 22.09.2008 bolder работает, также он работал и работает в эмуляторе Ramirosa.
Предложение - убрать "хак для некорректных romов", или хотя бы сделать его отключаемым через конфиг.
Предположительно это связано с введением "помощи для старта некоторых com как rom
Данный хак имеет влияние только при открытии через File/Open. Надо копать дальше, например проследить отладчиком параллельно в обоих версиях :)
Добавлено через 4 часа 26 минут
Кстати, насчёт bolder-а, в своё время был вопрос, почему он грузится из wav и не работает как rom. Выяснилось, что он использует картинку на экране для своих хитрых манипуляций, то есть если на экране не загрузчик, то фиг. Почему виснет на hlt, пока не откопал, но я сохранил почти все 64Кб в rom файл, и оно теперь открывается по File/Open.
Добавлено через 9 часов 2 минуты
Всё, отбой, нашёл я, в каком месте собака порылась.
Ошибка исправлена, новая версия на сайте.
b2m, очень, очень прошу.
можешь сделать эмуляцию агата в своём эмуляторе ?
на днях на сайте http://ssmu.ru/er/agat/Intro/ произошло очень большое обновление.
добавленны различные документации, программы, схемы, фотографии.
выложены сорцы досового эмулятора и пзу агатов.
ссылка на страницу с пзу http://ssmu.ru/er/agat/Reading/roms.shtml
я давно мечтаю увидеть эту прекрасную машинку реализованную на какомнибудь эмуляторе под виндовс, просить мне больше некого :)
можешь сделать эмуляцию агата в своём эмуляторе ?
Экий ты нетерпеливый! Ну хорошо, буду потихоньку делать. Одно дело - делать что-то знакомое, и совсем другое - нечто неизвестное. Так что - особо не радуйся, скоро ли будет результат - сам не знаю.
А пока я доделываю БК-0010. До сих пор там не было прерываний 50Гц и портов таймера, игрушки просто висли. К тому же была не реализована команда wait.
b2m, просто огромное спасибо и даже незнаю что ещё, хотябы за надежду :)
насчёт неизвестности, свяжись с автором эмулятора на вышеприведённом мной сайте, я общался с ним в начале этого года.
Доделал загрузку бинарных файлов из монитора в БК-0010. Я как-то не думал, что в мониторе свои процедуры чтения/записи байт на магнитофон. Да и вообще до сих пор не знал, как загружать бинарные файлы. Думал, как обычно, в бейсике bload. А оно какую-то чушь на экран выдавало. Ученье - свет, ... :)
Добавлено через 44 секунды
Теперь можно в КЛАД на БК-шке в эмуляторе поиграть :)
чтото ничего не запускается.
все виденые мною раньше эмуляторы БК запускали BIN файлы так:
mon (клавиша ENTER)
m (2 раза клавиша ENTER)
выбрать файл
после загрузки, если игра не стартует самостоятельно, набрать START или S
здесь же какой бы я файл не пытался загрузить, эмулятор просто крутит тексты на экране, пищит и ничего не запускает, даже туже клад.
у когонибудь получилось запустить хоть какуюто из этих игр
Их этих 4-х игр не работает только клад (точнее как-то странно работает - поле пустое, а вместо людей - кракозяблы).
Если ты скачивал эмулятор раньше чем 3 часа назад, закачай снова.
Команда M только для файлов, в заголовке которых есть имя файла.
А для этих 4-х нужно вводить команду L
Добавлено через 5 минут
Клад тоже работает, у него в заголовке неправильная длина файла (третий и четвёртый байты), стоит 20 20, а должно быть 00 3Е, т.к. длина файла с заголовком 3Е04h байт.
ага понял, теперь работает.
хотя в том кладе что я выложил все спрайты отображаются нормально в других эмуляторах бк.
гдето у тебя значит ошибка, буду тестировать игры.
странно, а где вы взяли команду L, в других эмуляторах БК после набора mon--->enter--->L--->enter--->enter ничего не происходит, просто не появляется окно проводника.
а М это как я понимаю только для касет *.tap ?
отображаются нормально в других эмуляторах
Значит другие эмуляторы не эмулируют п/п чтения байта, а просто записывают файл в память.
странно, а где вы взяли команду L
Я ничего ни откуда не брал. Что есть в мониторе - то есть.
ещё коечто, некоторые игры состоят из нескольких файлов.
тоесть bin файл плюс ovl файл(ы).
как такое запускать ?
пример:
С оверлеями я ещё не разбирался, но может быть это для БК-0011М? На обычной БК переключения страниц памяти нет, и оверлеи там ни к чему.
неа, это для бк 0010.
другие эмуляторы про оверлеи ничего не спрашивают, как я понимаю они их грузят автоматически
Добавлено через 19 минут
кроме ovl файлов бывают ещё:
ov1, ov2, ov3
gms, gme, pic, lev, lb1...
в общем все эти файлы можно увидеть здесь:
http://rapidshare.com/files/155832703/Games.rar.html
Мдя, над эмуляцие БК ещё работать и работать...
да походу в других эмуляторах делалось так, открываешь bin файл, а эмулятор дальше уже сам автоматически грузит остальные файлы.
а если делать открытие для каждого типа файлов то это будет вообще....
а так, эмуляция бк у тебя очень хорошая, только дозагрузки файлов нехватает, ну может чтото ещё по мелочам.
по крайней мере игры которые состоят из одного bin файла грузятся вроде все, я много проверил.
эмуляция бк у тебя очень хорошая
Издеваешься. Ладно дозагрузка неработает, так ведь ещё некоторые игры из одного файла вылетают (иногда после заставки), в некоторых играх клавиатура не работает, а в некоторых как бы застревает предыдущий символ.
клавиатура там работает, просто во многих играх нужно выбирать изменение управления.
ну %60 от БК0010 у тебя точно реализовано уже.
Интересно, а много там игр, которые только от джойстика управляются? Во многих играх стоит выбор: клавиатура или джойстик. Значит он был распространён, к тому-же клавиатура на БК-0010 была, мягко говоря, не для игр.
кто его знает, у меня БК небыло, а на спеке например можно было почти в любую игру играть на джойстике.
Doronetty
24.10.2008, 14:40
Ну я лично был в своё время и в игровых салонах, где БК стояли, и УПК в школе на ней родимой проходил - и ни разу не видел джойстика под неё! Под Атари 65ХЕ - да, под Спектрум - да, а вот под БК - нигде и ни разу! А мышь вот видел (она была весьма ужасающего вида)! :)
b2m, на реальном Векторе бит4 (вход с магнитофона) порта 1 при чтении возвращает 1 (при отсутствии сигнала).
Веришь/не веришь? Исправишь/не исправишь? ;)
Веришь/не веришь? Исправишь/не исправишь?
Верю. Исправлю.
а что за изменения в последней версии за 24.10.2008 ?
и куда пропала иконка эмулятора ?
заработали большинство игр с доп.блоками загрузки (оверлеями) и некоторые другие раньше неработающие.
но ошибок всёравно очень много.
Air wolf например очень жестоко глючит, bolder не желает идти дальше меню.
а что за изменения в последней версии за 24.10.2008 ?
и куда пропала иконка эмулятора ?
Как ты правильно заметил:
заработали большинство игр с доп.блоками загрузки
Иконка, вроде, на месте.
странно, а в первый раз когда я его сёдня запускал иконки небыло.
БК-шная клавиатура не способна обрабатывать нажатие более одной кнопки одновременно. Клавиши-модификаторы не в счет, они сами по себе не регистрируются -- все делает клавиатурный БМК. Поэтому, джойстик на БК насущная потребность. Другое дело, что в ее 16кб ничего прикольного запихнуть так и не получилось, игр с джойстиком раз-два и обчелся, a картотеки софта для БК чего-то не видно ;)
БК-шная клавиатура не способна обрабатывать нажатие более одной кнопки одновременно
Вот тут как раз вопрос есть. Я читал, что есть возможность считывать коды других нажатых клавиш за счёт применения команды RESET. Но пока я так и не понял эту фичу.
Error404
25.10.2008, 15:35
У меня в emu с профилем Орион-HDD странный эффект - начинает грузиться (т.е. HDD работает), но потом выдает такое сообщение (см аттач) и зависает. Все прописанные в конфиге файлы в "Orion\" вроде присутствуют. Что может быть не так?
Не знаю. Если конфиг менял, покажи. Если нет - тогда даже идей никаких нет по этому поводу. Судя по тому, что надпись на русском - стандартное окно MFC, однако в процессе эмуляции никакие файлы без требования пользователя не открываются, т.е. сначала всё открывается, что в конфиге есть, а потом запускается эмуляция.
Добавлено через 50 секунд
А грузится точно с винчестера? Может с флоппи?
Error404
26.10.2008, 13:32
Не знаю. Если конфиг менял, покажи. Если нет - тогда даже идей никаких нет по этому поводу. Судя по тому, что надпись на русском - стандартное окно MFC, однако в процессе эмуляции никакие файлы без требования пользователя не открываются, т.е. сначала всё открывается, что в конфиге есть, а потом запускается эмуляция.
Добавлено через 50 секунд
А грузится точно с винчестера? Может с флоппи?
Грузится точно с винчестера, т.к. с HDD запускается MBR с его BootLoader (меню выбора загрузочного раздела, на floppy нет такого), конфиги не менял - только скопировал в \Orion нужные (указанные в конфиге) файлы. Если при загрузке удержать ^C (аналог F4), то при старте операционки включается режим трассировки выполнения config.sys. Это я сегодня уже вспомнил. :) Как показал эксперимент (см. аттач), виснет на попытке обращения к HDD Slave. Думаю, если HDD (slave или master - не принципиально) нет в системе (т.е. нет в конфиге или не найден указанный в конфиге файл-образ), то с порта F500h (или где там оно сконфигурено) при соотвествующем обращении должен читаться мусор (ff или 0 не помню что там реально читается когда к порту ничего не подключено) - такую ситуацию операционка умеет отрабатывать (как неготовноcть/отсутствие HDD).
На эмуляцию HDD подозрения были, и они подтвердились. Исправлю.
Error404, посмотри, есть ли эта ошибка в новой версии. Надеюсь, что нету. Только я не совсем понял эту хитрую нумерацию IDE и partition.
ZEman, я обнаружил серьёзный баг в эмуляции процессора БК (я догадывался, что при чтении слова по нечётному адресу нужно читать по адресу с обнулённым младшим битом, но видимо забыл про это). Теперь работает большинство игр, в том числе и airwolf. Я только не понял, почему после однократного ресета иногда игры как-то криво грузятся, а после того как сбросить второй раз - нормально.
наверно гдето не обнуляется какаято информация.
тут нужен ктото из разбирающихся в бк.
Добавлено через 9 минут
да, стало намного лучше.
но всёравно ещё много игр не запускается, например тотже bolder или apple.
Error404
27.10.2008, 16:03
Error404, посмотри, есть ли эта ошибка в новой версии. Надеюсь, что нету. Только я не совсем понял эту хитрую нумерацию IDE и partition.
Теперь ошибки нет, работает нормально как с одним приводом, так и с master+slave. ДОС определяет наличие/отсутствие привода правильно.
--
Разделы в первых релизах ДОС не поддерживались, и были два IDE устройства: "0" (мастер) и "1" (раб). Позже, когда я решил сделать MBR-схему партиций, для сохранения совместимости с первоначальной нумерацией я четные индексы (0,2,4,6) отвел для адресации четырех партиций Мастер-привода, и нечетные (1,3,5,7) - для адресации четырех партиций Раб-привода. В CP/M у меня для IDE отведены два "слота" (два набора буферов DPH/DPB, ALV), они именуются в config.sys как IDE0, IDE1. В каждом слоте может быть смонтирована любая из партиций (0,1,....7) с любой буквой диска ('A'..'P').
b2m, да, такое было и говорят даже это использовалось в паре гамезов, но тут надо спрашивать эксперта -- там очень мутная система, основанная на глюках и временных параметрах сигнала RESET. Хорошо бы найти сжатый пример, где бы этот эффект демонстрировался: я не находил пока.
неплохо было бы пригласить сюда когонибудь из Бкшников.
например тогоже Юрия калмыкова, удалось ведь ему сделать всё....почти всё.
В CP/M у меня для IDE отведены два "слота" (два набора буферов DPH/DPB, ALV)
Про чётный/нечётный я догадывался, но смущали вот эти ide0, ide1. Про то, что это связано с буферами СР/М я, естесственно, не догадывался. Получается, можно подключить не более двух партиций?
http://rapidshare.com/files/158020404/BK_doki.rar.html
я тут сложил в один архив различные книжки и документацию по бк, скачивал откудато из инета, вдруг пригодятся.
Error404
27.10.2008, 16:52
Про чётный/нечётный я догадывался, но смущали вот эти ide0, ide1. Про то, что это связано с буферами СР/М я, естесственно, не догадывался. Получается, можно подключить не более двух партиций?
Одновременно - не более двух партиций, т.к. каждая партиция несет свою файлову систему, значит каждой нужны эти CP/M-овские буфера. А буфера съедают кучу памяти в TPA и я их ограничил двумя наборами (т.к. большая TPA это полезнее). Есть и еще ограничение (опять же по размеру буфера) - ALV максимум 512 байт, т.е. нельзя использовать в партиции файловую систему размером больше чем 4096 логических блоков. При максимальном размере блока 16Кб получаем максимум для файловой системы 65Mb. В любом случае, это больше, чем суммарное количество данных с сохранившихся орионовских дискет. :)
--
Основная мысль при работе с партициями была в том, чтобы кроме загрузочной CP/M партиции иметь "безразмерную" FAT-партицию, откуда брать файлы при помощи утилит (где и хранить огромные количества данных) :) , партицию с UZIX и т.д.
Что конечно не запрещает во все 4 партиции положить CP/M, но работать одновременно не более с чем двумя (чтобы штатно средствами CP/M между ними копировать). В-общем, не придумал как и буфера иметь большие, и TPA не тратить.
b2m
Можно ли как-то запустить в твоем эмуляторе специалистовские игрушки с сайта AVsh, которые из двух файлов - *.cpu и *.i80? В принципе можно попытаться сделать из них rks (хотя непонятно, как их загрузить в конфиг MX), но может есть легальный способ?
И вдогонку еще вопрос - как в специалист MX грузить что-то извне (кроме как с диска)? Ну и насчет диска - плагин к TC от Error404 для работы с *.odi диск BST_CPM0.ODI воспринимает нормально, а на bst_mx0.odi дает ошибку, хотя твой эмулятор работает с обоими дисками. Чем можно корректно работать с дисками для Dos_MX?
Попробовал переделать 2 *.i80 в *.rks - один нормально загрузился и заработал в конфиге обычного специалиста, а другому для корректной работы нужно чего-то специфическое MXное, т.е. вопрос по загрузке cpu+i80 в конфиг MX сохраняет актуальность.
игрушки с сайта AVsh
Должно открываться через File/Open, только некоторые требуют своего монитора (см. файл .cpu), но он обычно присутствует в архиве.
Чем можно корректно работать с дисками для Dos_MX?
Не знаю, не было потребности.
Должно открываться через File/Open,
Понял, это моя невнимательность, пропустил строчку AVSh files, т.к. почему-то думал что должен открываться файл i80 а не cpu. Все работает.
чтото совсем никаких сдвигов, целая неделя уже прошла.
эмулятор вообще ещё жив ?
b2m, есть небольшое предложение по облегчению загрузки для БК0010, можно добавить кнопку автозагрузка, нажал и в эмуле автоматом вводится сначала Mon потом L.
Нет, ну вы посмотрите на него! Я ему Агат делаю в поте лица, а ему "сдвиги" подавай! :)
Кстати, можно грузить файлы так же, как и в других эмуляторах (MON enter M enter enter), про директиву L можно забыть :)
sorry.
я думал что про агат совсем уже забыли, а с БК проблемы.
я игры проверял бкшные, совместимость у эмулятора примерно 70%
Powered by vBulletin® Version 4.2.5 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot