PC-01 Lviv

It is currently 29 Mar 2024, 16:20

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00




Post new topic  Reply to topic  [ 66 posts ]  Go to page 1 2 3 4 5 Next
Author Message
PostPosted: 11 Apr 2013, 19:29 
Offline

Joined: 11 Apr 2013, 16:13
Posts: 27
Location: Латвия
Приветствую всех!

Поскольку речь зашла о флеш-картах хочу поделиться своим опытом в этом деле. Я уже больше года пользую CP/M на своём Львове. В качестве дисковода используется CompactFlash карта. Выбор CF был обусловлен тем, что она программно может быть переведена в режим True IDE 8-bit, что нам и требуется. В этом режиме она садится на шину Львова как родная без дополнительных контроллеров и других деталей, в отличии от всех других носителей (fdd, SD), которым нужны дополнительные схемы согласования. Всё что требуется это припаять CF или воткнуть через переходник во ВНЕШ.1, залить на CF CP/M и биос и прошить загрузчик в ПЗУ. Я использовал Flash ПЗУ и прошивал его самим Львовом в его родной панельке. Систему можно протестировать и не прошивая ПЗУ, а просто загрузив биос с магнитофона. Он уже сам подцепит ядро CP/M с CF. Биосом я готов поделиться со всеми желающими.
Немного расскажу о системе. Ядро скомпилировано из фирменных исходников. Биос написан с нуля. Система использует формат образов дисков от "Вектор-06ц", только размер увеличен до 1МБ. Образы закидываются на CF с помощью Paragon Hard Disk Manager. LVT файлы закидываются на образ с помощью FARa с соответствующим плагином. Так как все программы в CP/M запускаются с адреса 0100H, потребовалось написать загрузчики. Это программы R и RB, для игр в кодах и на бейсике соответственно. Например, формат командной строки для запуска файла GALAXY.LVT будет R GALAXY . При этом программа R загружает файл GALAXY.LVT по нужным адресам и запускает на исполнение. Также мною написаны несколько системных программ под CP/M для смены рабочих образов, коммуникации с PC и т.д. Если будет интерес, готов поделиться всем что имею.
В планах прикрутить 512KБ памяти SRAM и видеоконтроллер Yamaha V9958 от MSX2, получив таким образом полноценную CP/M машину с 80 символами в строке + графика 256 x 212 при 256 цветов на точку...


Top
   
PostPosted: 11 Apr 2013, 19:37 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
orest
Да... Мы с gtament планировали всех страждущих обеспечить переходниками на SCART. Я даже DIN7 накупил. Но gtament пропал :(

UPD
r00t
Вот это да!!!!
Ой, простите, за невежливость. Первым делом приветствую Вас на форуме! Просто поражен Вашим описанием. Это дейстивтельно, чудо. Я что-то даже не подумал о CF, а ведь сам недавно собрался его приладить к 286-й IBM. Интерес не то, чтобы есть, а аж зашкаливает. Мы тут толочим про потенциальные возможности, а у Вас уже есть рабочий "Львов" с CF, CP/M и собственным загрузчиком. Я просто в восторге! Поделитесь, пожалуйста, всеми подробностями.


Top
   
PostPosted: 11 Apr 2013, 19:41 
Offline

Joined: 27 Feb 2013, 19:57
Posts: 125
Location: Львівщина
Ура, ура!!! А ми тут голову ламаем ) Красота-то какая!
Quote:
Если будет интерес, готов поделиться всем что имею.
Давайте все, и побольше, побольше! ))
Схему распайки вьіводов для начала бьіло бьі идеально. Даже на знаю, что спросить, настолько все круто.

Где же вьі раньше пропадали?


Top
   
PostPosted: 11 Apr 2013, 20:53 
Offline

Joined: 11 Apr 2013, 16:13
Posts: 27
Location: Латвия
Quote:
Схему распайки вьіводов для начала бьіло бьі идеально.
Схема проста.
Используется китайский переходник CF to 40 Pin IDE, например такой.
Соединяем по схеме:

ВНЕШ.1 | IDE
-----------------------------------
D0...D7 => Соединяем соответственно
A0...A2 => DA0...DA2 соответственно
CS2 => /IDE_CS0
IO/R => /IOR
IO/W => /IOW
GND => Соединяем соответственно
+5в => Соединяем соответственно


Распиновка IDE


Top
   
PostPosted: 11 Apr 2013, 20:59 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
Как заставить грузится систему? И фотографии, пожалуйста, если можно :)


Top
   
PostPosted: 11 Apr 2013, 22:35 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Quote:
Поскольку речь зашла о флеш-картах хочу поделиться своим опытом в этом деле. Я уже больше года пользую CP/M на своём Львове. В качестве дисковода используется CompactFlash карта. Выбор CF был обусловлен тем, что она программно может быть переведена в режим True IDE 8-bit, что нам и требуется. В этом режиме она садится на шину Львова как родная без дополнительных контроллеров и других деталей, в отличии от всех других носителей (fdd, SD), которым нужны дополнительные схемы согласования. Всё что требуется это припаять CF или воткнуть через переходник во ВНЕШ.1, залить на CF CP/M и биос и прошить загрузчик в ПЗУ. Я использовал Flash ПЗУ и прошивал его самим Львовом в его родной панельке. Систему можно протестировать и не прошивая ПЗУ, а просто загрузив биос с магнитофона. Он уже сам подцепит ядро CP/M с CF. Биосом я готов поделиться со всеми желающими.
Добрый вечер, далекий друг! Добро пожаловать на форум!

Заинтриговали Вы нас до головокружения. Требуем аппетитных подробностей. Для начала буквально парочка вопросов.
1. Как это Вы запустили на "Львове" CP/M80? Ведь для комфортной работы нужны 80 символов в строке, чего на ПК-01 без аппаратной доработки никак не достичь, прерывания для обработки клавиатуры, да и адресное пространство у ПК-01 под эту ось слабо приспособлено. Адаптировали СиПиЭм или допиливали ПК-01?

2. Откуда у Вас такой интерес к ПК-01? Случайная страсть или давнее чувство?

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
PostPosted: 12 Apr 2013, 05:32 
Offline

Joined: 11 Apr 2013, 16:13
Posts: 27
Location: Латвия
Quote:
Как заставить грузится систему? И фотографии, пожалуйста, если можно :)
Я сейчас нахожусь в отъезде, поэтому доступа к "Львову" нет. Но посмотреть как все работает можно. Для тестирования я написал альтернативный биос, который использует виртуальный диск в оперативной памяти. Эту систему можно запустить на эмуляторе. Последовательность запуска следующая:
Ставим эмулятор 3000 на паузу, скармливаем ему файлы именно в такой последовательности DISK_STAT.lvt, CP_M.LVT, BIOS.LVT и снимаем с паузы. Все необходимые файлы в приложенном архиве.
Подробную инструкция для установки CP/M на реальный "Львов" я напишу позже.


Attachments:
CP_M_Virt.rar [14.79 KiB]
Downloaded 824 times
Top
   
PostPosted: 12 Apr 2013, 05:55 
Offline

Joined: 11 Apr 2013, 16:13
Posts: 27
Location: Латвия
Quote:
1. Как это Вы запустили на "Львове" CP/M80? Ведь для комфортной работы нужны 80 символов в строке, чего на ПК-01 без аппаратной доработки никак не достичь, прерывания для обработки клавиатуры, да и адресное пространство у ПК-01 под эту ось слабо приспособлено. Адаптировали СиПиЭм или допиливали ПК-01?
Да, Вы правы. Пришлось адаптировать ядро, CCP и некоторые стандартные утилиты (Power.com, Dump.com) для работы в режиме 32 символа. Все проблемы обработки клавиатуры решены программно в биосе. А вот адресное пространство отлично приспособлено под CP/M. У меня даже складывается впечатление, что ПК-01 изначально разрабатывался под эту ОС. Единственный недостаток, это малое количество памяти. Слишком много отдано под ПЗУ. Из-за этого не запускается dBase. Но игры запускаются все, включая Графа Дракулу.
Quote:
2. Откуда у Вас такой интерес к ПК-01? Случайная страсть или давнее чувство?
ПК-01 мне продал друг в 91-м году можно сказать за копейки. Все дело в том, что у нас в Латвии для него совсем не было игр. Все рынки были завалены только софтом для Спектрума. Поэтому друг, поиграв в игры на единственной кассете, которая шла в комплекте, продал его мне. Я в то время занимался радиолюбительством и для меня "Львов" был не только игровым компьютером. На нем я освоил программирование на Бейсике и Ассемблере. Дело осложнялось полным отсутствием технической документации. Поэтому я вскоре пересел на Спектрум, а "Львов" оказался в кладовке. Но не на свалке, уж очень добротно был сделан, жаль было выбрасывать :) . Так он и пролежал до нового века, когда в интернете стали появляться игры для него. Это было второе рождение! Но не хватало главного - диска для всего этого добра. Так в 2009-м году появилась сумасшедшая идея поставить на "Львов" CP/M...


Top
   
PostPosted: 12 Apr 2013, 06:26 
Offline
User avatar

Joined: 13 Feb 2012, 15:32
Posts: 341
Location: Россия
r00t аплодирую стоя !!!
запустилось


Attachments:
screenshot_12_04_2013_14_27_29.jpg
screenshot_12_04_2013_14_27_29.jpg [ 19.56 KiB | Viewed 9754 times ]
screenshot_12_04_2013_14_24_09.jpg
screenshot_12_04_2013_14_24_09.jpg [ 14.78 KiB | Viewed 9754 times ]
Top
   
PostPosted: 12 Apr 2013, 10:41 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
Quote:
Подробную инструкция для установки CP/M на реальный "Львов" я напишу позже.
У меня только один вопрос, загрузка CP/M с CF требует замены ПЗУшки на "Львове" либо аппаратных (пусть и небольших) вмешательств?

MARAT_BEST
Выглядит прекрасно! Хотелка так и растет :)


Top
   
PostPosted: 12 Apr 2013, 10:45 
Offline
User avatar

Joined: 11 Aug 2008, 17:05
Posts: 1405
Location: Украина
Quote:
А вот адресное пространство отлично приспособлено под CP/M. У меня даже складывается впечатление, что ПК-01 изначально разрабатывался под эту ОС. Единственный недостаток, это малое количество памяти. Слишком много отдано под ПЗУ. Из-за этого не запускается dBase.
Ваши догадки верны. Если обраться к разделу "F.A.Q. / ЧаВо (Часто задаваемые Вопросы)", то можно найти ссылки на наши беседы с разработчиком ПК-01. Вроде бы ПК-01 действительно хотели приспособить под эту ось. Сейчас нет времени искать эту реплику. Да там и мало что сообщено. Изначально СиПиЭм-машинами были ПК-01М и ПК-02 "Мукачево".
Quote:
Так в 2009-м году появилась сумасшедшая идея поставить на "Львов" CP/M...
Все это удивительно. Особенно если принять во внимание тот факт, что Вы не оглядывались на наследие ПК-02, когда адаптировали СиПиЭМ, конечно, если я все верно понял. Великий труд сделали! Буду ждать с нетерпением продолжения. :)

У меня к Вам вопрос совсем не в тему. А Вы не пробовали подключить ко "Львову" PS/2 клавиатуру? А то аутентичная зело неудобна в работа. В моем случае еще и раздолбана порядком. Наш друг vinxru проделал подобную штуку для "Специалиста", сделал адаптер на основе ATMega8, но все это для "Специалиста"... Дайте, пожалуйста, заключение технической экспертизы, насколько это возможно сделать для ПК-01 "Львов".

_________________
Carthago delenda est, Carthaginem delendam esse


Top
   
PostPosted: 12 Apr 2013, 18:45 
Offline

Joined: 11 Apr 2013, 16:13
Posts: 27
Location: Латвия
Quote:
У меня только один вопрос, загрузка CP/M с CF требует замены ПЗУшки на "Львове" либо аппаратных (пусть и небольших) вмешательств?
Я не совсем понимаю, что имеется ввиду под аппаратными доработками. Само собой CF нужно физически подключить к ВНЕШ.1. Если есть желание установить CF внутрь корпуса, то нужно подпаяться к ВНЕШ.1 изнутри. Если устанавливать снаружи, то нужно изготовить переходник IDE => ВНЕШ.1.
Теперь о ПЗУ. Сам загрузчик занимает около 100 байт. В моем варианте он размещен с адреса F9F6H. Это свободное место в ПЗУ. Такой вариант подключения требует замены всего ПЗУ, а не только микросхемы в панельке. Выпаивать микросхемы не нужно, ПЗУ просто отключается перерезанием одной дорожки, Вместо него в первую панельку вставляется микросхема Flash ROM большой емкости. На нее нужно завести дополнительно три недостающих адреса А11,А12,А13. Так сделано у меня.
Преимущество этого способа в том, что мы имеем не попорченное ПЗУ со всеми подпрограммами и Бейсиком, к тому же подменяем оригинальное ПЗУ, которое скоро "потечёт" от старости. Недостаток в том, что требуется работать паяльником.
Другой вариант перенести загрузчик в первую микросхему. Тогда ничего паять не нужно, но в результате мы лишаемся Бейсика. Сделать можно по-разному. Предлагайте свои варианты.


Top
   
PostPosted: 12 Apr 2013, 19:00 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
Quote:
Я не совсем понимаю, что имеется ввиду под аппаратными доработками.
Тем не менее, Вы полностью ответили на мои вопросы :). Фактически, Ваш вариант предусматривает вмешательство паяльника, хотя можно обойтись только заменой ПЗУ ценой Бейсика. Хотя, конечно, можно загрузчик и с магнитофона читать, для особой ламповой эстетики.
100-байт... Хм... куда б их загнать, так чтоб поменьше оригинал ломать.. Надо подумать.


Top
   
PostPosted: 12 Apr 2013, 19:27 
Offline
Site Admin
User avatar

Joined: 24 Jul 2008, 12:05
Posts: 1070
По горячим следам: в ПЗУ по адрессу С109 - С15E солидная дырка. Пробовал забить ее мусором (оставив по несколько ноликов "с краев" на всякий случай) и запустить бейсик игру. Работает, зараза :). Думаю дальше :)


Top
   
PostPosted: 12 Apr 2013, 20:01 
Offline

Joined: 11 Apr 2013, 16:13
Posts: 27
Location: Латвия
Quote:
По горячим следам: в ПЗУ по адрессу С109 - С15E солидная дырка. Пробовал забить ее мусором (оставив по несколько ноликов "с краев" на всякий случай) и запустить бейсик игру. Работает, зараза :). Думаю дальше :)
Только учитывайте, чтобы перенести загрузчик в первую микросхему, туда же нужно будет перенести блок кода начальной инициализации системы, который располагается с Е000H до Е???H точно не помню. А это уже гораздо больше 100 байт :( . В моём варианте инициализация идет стандартно, и в конце процедуры вставлен JMP на F9F6H.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 66 posts ]  Go to page 1 2 3 4 5 Next

Forum Games WEB Tape Loader Twitter RSS

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 5 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Powered by phpBB® Forum Software © phpBB Limited