Аз не разполагам с РОМ-а, за който споменаваш, но наистина ще е полезно да се намери дори само заради "запазването на историята". Интересно е също дали разликата е само в кода на 'Ч'-то или има и друго.
Да, и на мен ми е интересно дали има други разлики. Ако се намери собственик на такъв компютър, ще могат да се видят разни други неща - как изглежда клавиатурата, например.
Любопитна подробност е, че за РОМ на Правец-8Д са използвали оригинала Basic 1.1a, където функциите за работа с касетофон (CLOAD/CSAVE) са "бъгави" и предизвикват известното "ERRORS FOUND", малко по-късно са подобрени в Basic 1.1b.
Мда, помня, че навремето като ползвах касетофон, редовно излизаше "ERRORS FOUND", но програмите работеха, и затова се бях научил да не му обръщам внимание.
Когато излезе контролерът за флопи на Захариев в сп. "Компютър за вас", баща ми го реализира, и беше невероятен напредък, спрямо касетофона
Иначе очаквай да се сблъскаш с доста недокументирани детайли по хардуера и пиши за прогреса.
Ами да, очаквам го, това си е направо част от забавлението
Интересен ти е и избора на език - паскал - какви платформи предвиждаш да се поддържат?
Ами поне Windows и Linux, които се поддържат и в момента. Също, евентуално DOS (с 32-битов DOS extender), Mac OS X. Имаше интерес и за Amiga, но се опасявам, че ще са твърде бавни
Относно езика - фен съм на Паскал и пиша на него. Освен това съм част от екипа, който прави компилатора Free Pascal. Аз му добавих поддръжка на процесорите i8086 (16-битов x86) и Z80, както и на платформите 16-битов DOS, Win16 (Windows 3.x), което даже влезе в новините по разни сайтове наскоро и ZX Spectrum
Но работя не само по ретро платформи, например в момента работя по поддръжка на WebAssembly, само че още не е готова. В бъдеще мисля и 6502 поддръжка да правя, но е малко трудно да се генерира код за този процесор.
Какво имаш предвид под "по-прецизна" емулация?
Ами точност до машинен цикъл. Смятам да направя най-различни тестове, с които да го сравня с реалния хардуер. Мисля да им публикувам сорса, така че да стане своеобразен testsuite за съвместимост, с който да могат да се тестват и други емулатори. Други неща, които планирам:
- емулация на контролера на Захариев, както е в списанието + емулация на звуците от истинско флопи, за по-голямо удоволствие при работа
- по-бавна, но по-прецизна емулация на видео контролера, при която се формира видео изображението пиксел по пиксел, като при реалния компютър. Това ще забави доста емулацията, затова ще е опционално.
- може би някакви ефекти, подобни на PAL ghosting-а в Oricutron
- dump на съдържанието на DRAM при включване на захранването, за да симулирам реалистично ефектите, които излизат на екрана при включване на компютъра. Разбира се, това са случайни артефакти, но все пак образуват някакви шаблони, зависещи от чиповете DRAM, инсталирани в компютъра. За да получа такива dump-ове сигурно ще трябва да слагам някакъв custom ROM, който да не инициализира паметта, ами да си я оставя в първоначалния вид, поне във областта, където е видео паметта. Ще го измисля, още не съм стигнал дотам
- всякакви други идеи, които могат да ми хрумнат или пък да дойдат от този форум
Въоръжен съм с логически анализатор (Intronix LA1034 LOGICPORT), закачен за шината на компютъра, с който мога да наблюдавам какво се случва, вкл. и работата на ULA видео контролера, който си вмъква обръщенията към видео паметта по време на едната фаза на clock-а, когато 6502 не ползва шината.
Имам също и EPROM/EEPROM/FLASH програматор Batronix BX48 Batego II.
Въобще - идеи много. Засега първо трябва да го довърша де, че още няма звук и касетофон.