PDA

Просмотр полной версии : CP/M - что, где, когда?



demetrius2003
13.11.2020, 19:24
Доброго дня, уважаемые форумчане!
Вот озадачился ознакомлением с сабжевой операционкой. И сразу же встал вопрос - а где, собственно, можно было запустить её? Ну вот Профи, знаю. А что-то оз разряда Орион? Какие ещё машины позволяли запустить CP/M? Как и в каком эмуле её пощупать? С чего вообще начать то?

shattered
13.11.2020, 19:53
Robotron 1715

klingon
13.11.2020, 20:12
http://cpuville.com/Kits/Single-board-kit.html

или любая аналогичная система

если эмуль, то хороши altairz80, yaze, MYZ80

marinovsoft
13.11.2020, 20:27
Корвет.
Эмуляторы https://zx-pk.ru/threads/31156-korvet-emulyatory.html

bigral
13.11.2020, 22:51
вот очень толковый ресурс https://www.autometer.de/unix4fun/z80pack/ на котором собранно все самое самое, и даже то чего у наших компов не было, а именно cpm3 с банками памяти и mpm

fikus8
13.11.2020, 23:36
https://zx-pk.ru/threads/29372-ayusha-z80-sr-m-sovmestimyj-kompyuter.html
Только вот плат, похоже, в продаже нет. :)

sdima1357
14.11.2020, 00:39
Доброго дня, уважаемые форумчане!
Вот озадачился ознакомлением с сабжевой операционкой. И сразу же встал вопрос - а где, собственно, можно было запустить её? Ну вот Профи, знаю. А что-то оз разряда Орион? Какие ещё машины позволяли запустить CP/M? Как и в каком эмуле её пощупать? С чего вообще начать то?


CP/M 2.2:
Вот мужик серьезно озадачился и вживую и на FPGA:

http://www.searle.wales/

Образ диска отсюда:
https://obsolescence.wixsite.com/obsolescence/multicomp-fpga-cpm-demo-disk

Moй на STM32
https://github.com/sdima1357/spectrum128_cpm_8bit


https://www.youtube.com/watch?v=-h3XCy79aJw

nihirash
14.11.2020, 03:00
Под ATM/Бейзу был CP/M.

Под Spectrum +3, Spectrum Next есть CP/M Plus(CP/M 3).

RC2014 можно собрать ради CP/M - отличный вариант для поковыряться.

Кворум, кстати, KAY/Scorpion тоже вариант. Profi весьма вариант. Компьютеры MSX вполне могут запускать CP/M софт.

Пентагон с кэшем тоже вариант.

На Орионе была целая пригоршня CP/M с разными копирайтами.

Самый простой вариант отдельного компьютера - берешь ESP32 и к нему паяешь несколько резисторов - получаешь PS/2 клавиатуру, VGA выход и эмулятор Altair 8800 c CP/M(есть прямо в примерах библиотеки fabGL).

Ну и миллиард эмуляторов этой системы.

rw6hrm
14.11.2020, 09:48
https://zx-pk.ru/threads/29372-ayush...kompyuter.html
Только вот плат, похоже, в продаже нет.

Подарю одну ;)

Tronix
14.11.2020, 10:08
Аюша рулез форева!
CP/M похожа на MS-DOS, вернее конечно наоборот, только без резидентов (TSR), без перенаправлений с устройства в устройство, да много без чего. Но если с MS-DOS когда то работал, то CP/M будет интуитивно понятна. Ничего особенного.

Alex_LG
14.11.2020, 10:14
Вот мой вариант одноплатного компа с ср/м2.2 + hdd, взял у какого-то интуриста и немного переделал под себя. Уже выкладывал где-то здесь, еще раз ссылку дам, сделал под лут...
https://drive.google.com/file/d/1TvenvXgdS1NSXleXUVtUaJqnxl1tJ3Bw/view?usp=drivesdk

krotan
14.11.2020, 17:54
CP/M присутствует в спектрум-совместимых компьютерах Scorpion ZS-256, Хоббит (большой), АТМ всех разновидностей и Профи, кроме того его можно приколхозить почти на все спектрум-клоны, включая Пентагон и Ленинград...

NEO SPECTRUMAN
14.11.2020, 23:55
а как у CP\M-ов с обратной совместимостью?
смысле у официальных версий
а не отечественных подделок с левыми названиями

и как у msx dos-ов с совместимостью с cp\m-ом?

nihirash
15.11.2020, 02:57
а как у CP\M-ов с обратной совместимостью?

Все ок.



не отечественных подделок с левыми названиями

Да и тут 99% ок. Не считая софт, что лезет напрямую в железо.

demetrius2003
15.11.2020, 08:38
Не успеваю читать и переваривать! Железо я пока не буду потрошить. Покамест обойдусь эмуляторами. И хотелось бы выяснить:
1. cp/m должна, просто обязана, состоять из прошивки БИОСа и основной часто на флопике.
2. Я правильно понимаю, подкидываешь нужный РОМ в эмулятор, нужный образ дискеты и вуаля!
3. В соответствии со своими соображениями я запустил UnrealSpeccy в режиме Профи. Там ведь уже в ПЗУ есть всё касаемое cp/m, но ничего не вышло! Как и не вышло запустить её на эмуляторах Корвета и Ориона!!! Что я делаю не так?

P.S.: И где таки брать образы дискет? Вот много раз читал, что такакя то машина развивалась развивалась и наконец таки дошла до того, что на ней стала запускаться cp/m, открыв таким образом путь к запуску большого количества софта. FORTRAN, PASCAL, C и многое многое другое. Так вот где можно найти это многое другое? И для эмулей образы ведь разные под разные машины? Или есть какой-то более менее стандарт типа TRD?

P.P.S.: Смотрите, что нашёл: http://www.retroarchive.org/cpm/lang/
Это оно или не оно? Это будет работать в Корвете? В эмуляторе Ориона?

klingon
15.11.2020, 20:44
cp/m 80 - базово аппаратура: проц 8080 (КР580) или Z80 (предпочтительнее) + память доступная с 0000h + флоппи диск
часто rs232 в качестве Ввода-вывода

Далее BIOS, и BDOS адаптируется под конкретное железо. Например эмуляция дисковода через переписывание BDOS.

Все ретрокомпы, которые "поддерживают" CP/M - скорее препятствие к сути. То экран в памяти сидит, то программист в обход bios напрямую железо дергает.
Добавить еще отсутствие стандарта на русификацию.

Кстати, какую кодировку лучше использовать КОИ-7, КОИ-8, CP866?
вот сюда https://geoffg.net/terminal.html как-то русификацию прикрутить надо
Для своего компа интересуюсь

- - - Добавлено - - -
demetrius2003
вот тут просто:
https://schorn.ch/altair.html

там же ссылки на кучу программ

в нем же поддержка экспорт-импорт из файловой системы внутрь.
для работы с образами cpm дисков, если нужно есть спец софт http://www.moria.de/~michael/cpmtools/

krotan
15.11.2020, 23:01
1. cp/m должна, просто обязана, состоять из прошивки БИОСа и основной часто на флопике. В биосе компьютера только загрузчик операционной системы, причём любой, не обязательно cp/m, всё остальное грузится с дискеты, так что, пока у тебя не будет дискеты cp/m не увидишь... за исключением пожалуй атм-турбо, его разработчики вкорячили целиком всю cp/m в пзу компьютера...

Eltaron
16.11.2020, 06:06
Далее BIOS, и BDOS адаптируется под конкретное железо. Например эмуляция дисковода через переписывание BDOS.
Ну править бдос — это моветон. Всё хардварезависимое, включая эмуляцию дисковода, можно и нужно сделать через правку биоса.

Sayman
16.11.2020, 07:20
как у msx dos-ов с совместимостью с cp\m-ом?

Да и тут 99% ок. Не считая софт, что лезет напрямую в железо.

cp/m не совместима с msx-dos 2 в обратку потому, что msx-dos 2 умеет в каталоги, а cp/m нет. поэтому msx-dos 2 умеет пускать софт от цпм, а наоборот уже нельзя.

BDOS адаптируется под конкретное железо
BDOS не умеет к железу никакого отношения. для этого есть BIOS.

NEO SPECTRUMAN
16.11.2020, 07:31
поэтому msx-dos 2 умеет пускать софт от цпм, а наоборот уже нельзя.
это есное дело
вопрос был на сколько хорошо мсхдос запускает софт от цпм-ом :)

Sayman
16.11.2020, 07:36
вопрос был на сколько хорошо мсхдос запускает софт от цпм-ом
если цпм софт не лезет к железу, то на 100% (или на 99.999999%). т.е. софт использующий только стандартные вызовы цпм всегда будет работать везде, хоть msx-dos, хоть там ещё что, на атм или профи или кворуме.

nihirash
16.11.2020, 15:16
софт использующий только стандартные вызовы цпм всегда будет работать везде, хоть msx-dos, хоть там ещё что, на атм или профи или кворуме.

Вот это я и имел ввиду.

В этом и прелесть CP/M.

Иногда бывает, что конкретный софт не работает - но там чаще завязка на конкретные машины все таки есть в том или ином виде.

Говоря прямо, даже если софт использует графику(на CP/M 3) - он и то может быть кросс-платформенным(с драйвером GSX-80).

Один хороший чел пилит для Locomotive CP/M под +3 драйвер такой(на самом деле фирменный существовал, но куда то протерялся с концами).

https://www.youtube.com/watch?v=9r4OP97rYIc&ab_channel=ZXLDR

NEO SPECTRUMAN
16.11.2020, 15:50
под +3 драйвер такой
жесть товарищь намудрил с клешингом...
хотя если в оригинале отрисовка рамки другим цветом
то это уже проблематично повторить
хотя можно же было делать чб :)

klingon
16.11.2020, 18:30
Ну, не должно быть графики же :)
CP/M подразумевает тестовый ASCII экран. Но и тут есть проблемы совместимости.
Первое что приходит в голову - количество символов в строке, если приложение на 80 символов, а комп тянет 64, то возникают интересные эффекты.
Кроме того, терминалы бывают разные, и в разной степени совместимы с чем-то стандартным типа VT52, VT100. Соответственно предполагается, что к программе идет конфигуратор, который производит настройку ВВ. Как говорят: "ко многим программам конфигуратор утерян".
И да, в CP/M не должно же быть графики, ну если речь не идет про рамочки из ASCII.
То есть если есть графика, о какой совместимости можно говорить? Тут тогда программа не под CP/M, а под конкретный комп, где CPM просто инструмент для загрузки приложения с диска в память.

И да, символы с кодом больше 127 не стандартизированы

- - - Добавлено - - -


Говоря прямо, даже если софт использует графику(на CP/M 3) - он и то может быть кросс-платформенным(с драйвером GSX-80).
http://www.z80.eu/gsx.html

такая себе совместимость :(
90% компов с CP/M не смогут в этот драйвер. То есть приложение может, конечно быть gfx-80 совместимым. С учетом, что драйвера может и не быть, по GFX-80 не так просто документацию найти, что может свидетельствовать о егомалой распространенности.

andrews
16.11.2020, 20:56
СМ1800, КРАМ, intellecMDS Series II но они все на 8080 и советском клоне 580ик80. А были еще CP/M-86 и Concurrent CP/M-86

- - - Добавлено - - -


То есть если есть графика, о какой совместимости можно говорить?
это точно! не был создан графический стандарт и не существовало драйверов под графику для этих систем

alvis
17.11.2020, 03:10
3. В соответствии со своими соображениями я запустил UnrealSpeccy в режиме Профи.
Вот тут есть загрузочный диск http://old-dos.ru/dl.php?id=9714
Что бы отформатировать диск Е: при загрузке удерживать пробел, пока не услышишь щелчки. Если не отформатировать, в командере выдаст ошибку при открытии диска Е:. Диск Е: это ram-диск.
P.S. Загрузочный образ disksys.TD0 Остальные можно посмотреть подключив их как "В:" в эмуляторе. Или подменив "А:" после загрузки ОС.