You are here
Micro-Professor II (MPF II)
На местном интернет-аукционе подвернулся ретро-клон Apple-II под названием Microprofessor II (MPF II), в таком вот комплекте:
Для 1983 года вполне неплохая машинка, с полноценной (в отличие от цвет на 8х8 точек в Спектруме) графикой UPDATE: не совсем полноценная, как оказалось (см.ниже):
CPU: MOS Technology 6502 Clock rate: 1 MHz RAM: 64 KB (including 16KB RAM mapped at the same address as the ROM) ROM: 16 KB (12 KB of which is a BASIC interpreter) Text modes: 40×24 (using graphics mode) Graphics modes: 280×192 Colours: 8 colours Sound: 1 channel of 1-bit sound Connectors: Keyboard, Printer, Expansion port, cassette recorded input and output, Composite and TV-out Optional peripherals: 55 key full-size keyboard, Floppy disc drive, Thermal and Dot-matrix printers, Joystick Power supply: External PSU, 5,12V
Распакован:
При помощи встроенного Монитора прочитан байт из адреса 0xF800:
Листинг программы, вызывающей подпрограмму Монитора, которая выводит 26 букв латинского алфавита:
Ну, и встроенный BASIC (не с токенами, как в Спектруме):
Графические возможности дисплея в режиме большого разрешения не позволяют адресовать цвет индивидуального пикселя:
Внешняя клавиатура и блок питания имеют основу и корпус, сделанные из металла. Ощущения после современной техники незабываемые.
Мечта о "железном" процессоре 6502, чтобы потрогать за ассемблер, сбылась.
- Vitasam's blog
- Log in or register to post comments
- 6460 просмотров
Комментарии
Легендарный процессор
Интересно, насколько правда, что на 1МГц может быть производительнее Z80 на 3.57 Мгц
Здесь один из проектов проект хобийного компьютера на W65C02S6TPG-14
http://www.dourish.com/projects/mite.html
P.S. http://www.bjars.com/sourcecode.html исходники Atari 2600 игр (одна из них Hat Trick - хоккей на двоих на Forth :)
на github тоже есть ассемблерные игры
для 6502 есть разные Форт и Бейсики
Enterprise 128 (Z80) - BASIC vs Forth vs Turbo Pascal https://www.youtube.com/watch?v=U15I5a12fyA
Да, ради процессора и зацепился за этот лот
Да, ради процессора и зацепился за этот лот. Хочу попробовать Асм в "железном" варианте.
Форт и Си, если есть, хотелось бы попробовать тоже.
Идеально было бы найти контроллер флоппи для этого компа, но, скорее всего, нереально
Оказывается, графика не совсем полноценная
Оказывается, графика не совсем полноценная - цвет индивидуального пикселя в "свободном порядке" не указать:

Ужас
Это же графический режим Apple 2, правильно? Или что-то, уникальное для клона?
6502 быстрее Z80
Да это правда 6502 на 1МГц будет быстрее чем Z80 на 2.5МГц. 6502 на 1.25МГц (что все еще штатно) будет быстрей чем Z80 на 4 МГц. Оригинальная система команд с удобной адресацией, простые команды (пересылок) за два такта (декодер команд довольно интересный), команды загрузки и выгрузки за счет адресации в нулевой странице ускоряются до 3 тактов, с адресацией по полному 16 битному адресу - 4 такта. Z80 конечно помню довольно смутно, но ЕМНИП там 4 такта это маш. цикл, а за цикл там можно только регистр регистр переслать. Полный клон 6502 - WDC 65C02 разогнали до 14МГц. STM8 довольно похож архитектурно на 6502. Интересный процессор, в СССР его тоже дернули, правда не сразу - у нас на нем были АГАТы и ПРАВЕЦ.
Штучка
Симпатичная штучка, умели же делать даже клоны. Видео по аналоговому выходу?
Да, выглядит неплохо
Да, выглядит неплохо. Выход видео - аналоговый "тюльпан"
Авторские права на старые игры?
Поизучав интернеты, пришел к выводу, что эта машинка была
незаслуженнодостаточно хорошо забыта - не нашлось ни текстовых ресурсов, ни программ/игр. Лишь пара записей на сайтах old-computer музеев, в которых copy/pasted текст из вышеупомянутой Википедии.У меня есть 5 кассет. Если они окажутся читабильными, сильно плохо будет, с точки зрения копирайтов, выложить WAV файлы в Public Domain?
Копирайт
В большинства случаев это норм. Авторские права истекли, субъект их исчез или не возражает. Но больные на голову есть. Тривиальный пример — Тетрис, но даже их удовлетворяет, когда нарушающую их права игру просто удаляют из доступа по их запросу.
Скорее всего, истекли
Я тоже думаю, что, скорее всего, истекли. Но надо для начала проверить, читаются ли кассеты и есть ли на них что-либо. А то там может быть что-нибудь уровня программок для Радио86РК в журналах :)
Applesoft BASIC пример
Набрел на такой сайт: Applesoft BASIC in Javascript.
Попробовал этот пример на Микропрофессоре:
Ретро 6502
Перепробовал 4 музыкальных центра начала 2000х и старый, но дорогой плеер Sony Wilkman конца 90х. Ни один аппарат кассеты уже не умеет - резиновые детали (пассики и прижимные ролики) вышли из строя. В результате купил дешевый, но свежий китайский плеер, шумящий усилителем и помехами двигателя, зато умеющий кассеты воспроизводить:

Микропрофессор, вторая молодость
За отчетный период удалось немножко проапгрейдить Микропрофессор для современной жизни:

1. Платка цифрового магнитофона заработала на запись и чтение, после доработки выхода MIC до "нормального" уровня сигнала (3D-корпус для магнитофона обещали напечатать):
2. Удалось оцифровать программы со всех 5 кассет - оказалось, что программы записаны на кассетах по 3 раза. После оцифровки всего в .WAV файлы (44.1 KHz, 32-bit float) получилось по 6 вариантов одной программы (2 стереоканала по 3 раза). Видимо, лента на последних вариантах была менее изношена, поэтому всё удалось перевести в 1-битный формат ZX-Магнитофона:
Глядя на игры на этих кассетах, становится понятно, почему ZX Spectrum 48, появившийся в тот же год с Микропрофессором, завоевал рынок.
3. С целью эксперимента по загрузке бинарных данных в память MPF-II через штатный порт принтера (линии STROBE и BUSY) была сделана платка "сервера" на Ардуине:

Сам эксперимент:
Программа "Hello World" на Асме 6502, использующая стандартную процедуру Монитора (FDEDh) для вывода символа на экран
Скомпилировано в бинарный вид:
Программа на Бейсике, получающая биты из линии BUSY и загружающая байты в память:
Протокол - подобие SPI-шины:
1. MPF-II выставляет СТРОБ в "1"
2. По переднему фронту строба "0"->"1" Ардуина выставляет в BUSY следующий бит.
3. MPF-II собирает всё в байты.
Практической пользы от этого особой нет - скорость передачи данных мала ("протокол" использует достаточно большие задержки, чтобы наверняка попасть в биты и стробы), контроля и коррекции ошибок нет.
А после того, как на глаза попался этот проект на Гитхабе, вообще не осталось смысла городить "железное" решение. Оказалось, что Микропрофессор умеет записывать бинарные данные на кассету и читать оттуда в формате Apple-II. Тот же Hello World, загруженный "правильным" способом:
1. Бинарные файлы записаны в текстовый файл hellow.mon в таком формате:
2. Утилита c2t конвертировала текстовый файл в звуковой файл формата Apple-II:
3. Утилита wav2baw конвертировала файл hello.wav в 1-битный файл hello.baw:
4. Полученный файл hello.baw скопирован на SD-карточку ZX-Магнитофона и загружен в память MPF-II, далее запуск командой Монитора: