PDA

Просмотр полной версии : GPL CP/M clone



dhau
25.02.2005, 01:00
Помоему вместо того чтобы сетовать на недостатки TRDOS-а или пытаться придумать "операционную систему моей мечты" вот с такими красивыми иконками, я думаю имеет смысл посмотреть на замечательную, хорошо продуманную и легко расширяемую операционную систему для профессиональных i8080/Z80 компьютеров. Называется CP/M, в СССР была широко распространена на популярных мини-ЭВМ Роботрон. В спектрум-клонах есть несклько вполне удачных реализаций (Кворум, Профи, АТМ и ТУРБО 2+). Но видимо интереснее свои иконки рисовать...



;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
; Z S D O S
; A CP/M 2.2 compatible replacement Basic Disk Operating System (BDOS)
;
; Copyright (C) 1986,7,8 by:
;
; Harold F. Bower and Cameron W. Cotrill
;
; 7914 Redglobe Ct. 2160 N.W. 159th Place
; Severn, MD 21144-1048 Beaverton, OR 97006
; USA. USA.
;
; [email protected] [email protected]
;
; This program is free software; you can redistribute it and/or modify
; it under the terms of the GNU General Public License as published by
; the Free Software Foundation; either version 2 of the License, or
; (at your option) any later version.
;
; This program is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License (file LICENSE.TXT) for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, write to the Free Software
; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
;---------------------------------------------------------------------------
; ZSDOS is a CP/M 2.2 compatable BDOS replacement that contains numerous
; enhancements. It is based on P2DOS 2.1 by HAJ Ten Brugge and revisions
; to P2DOS made by Harold F. Bower, Benjamin Ho, and Cameron W. Cotrill.
; Several good ideas from both CP/M Plus(tm) and ZRDOS(tm) have been added.
; The authors wish to thank Bridger Mitchell of Plu*Perfect Systems for
; suggesting we put our heads together, for reviewing the efforts, and for
; suggesting better methods for coding some sections. Thanks also to Joe
; Wright of Alpha Systems for his review and suggestions, as well as
; squeezing a few more bytes for us.

; Support for Plu*Perfect'a BackGrounder ii(tm) and ZDS DateStamper(tm) is
; included, as well as support for ZCPR/BGii WHEEL and PATH.
; ZSDOS is compatable with NZCOM by Joe Wright of Alpha Systems.

; ZSDOS is designed for Z80 compatible processors ONLY!!!
; ZSDOS is coded to run in Z280 protected mode and may be ROMmed.

; LEGAL DEPARTMENT: P2DOS was written by H.A.J. Ten Brugge, ZSDOS
; modifications were by Cameron W. Cotrill and Harold F. Bower.
; ZDDOS modifications were done by Carson Wilson, Cameron W. Cotrill
; and Harold F. Bower.

; No author assumes responsibility or liability in the use of this
; program or any of its support utilities.

; P2DOS is Copyright (C) 1985 by H.A.J. Ten Brugge - All Rights Reserved
; H.A.J. Ten Brugge
; F. Zernikestraat 207
; 7553 EC Hengelo
; Netherlands
; Permission to use P2DOS code in ZSDOS granted to Harold F. Bower and
; Cameron W. Cotrill in letter 28 March 1988

; Code sections marked (bm) are revisions suggested by Bridger Mitchell.
; Code sections marked (bh) are from SUPRBDOS mods to P2DOS by Benjamin Ho.
; Code sections marked (crw) are revisions to support internal datestamper
; and are Copyright (C) 1988 by Carson Wilson.

; NOTES: Backgrounder ii and DateStamper are trademarks of Plu*Perfect
; Systems. CP/M is a trademark of Digital Research, Incorporated.
; ZRDOS is a trademark of Echelon, Incorporated.
PAGE
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
; Version 1.2a, 11/04/89
; Assemble with : SLR Z80ASMP or ZMAC
; Revisions:
; 11/04/89 Moved home call to rddir so bios hostbuf always
; updated before dir read.
; 07/18/89 Fixed tderr routine in ZDDOS so return codes not
; CWC altered from tderr unless called from 102 or 103.
; 06/20/89 Fixed bug in F10 ^R that output 256 spaces if ^R
; CWC entered with tab counter =0.
;* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

Shaos
25.02.2005, 08:06
Помоему вместо того чтобы сетовать на недостатки TRDOS-а или пытаться придумать "операционную систему моей мечты" вот с такими красивыми иконками, я думаю имеет смысл посмотреть на замечательную, хорошо продуманную и легко расширяемую операционную систему для профессиональных i8080/Z80 компьютеров. Называется CP/M, в СССР была широко распространена на популярных мини-ЭВМ Роботрон. В спектрум-клонах есть несклько вполне удачных реализаций (Кворум, Профи, АТМ и ТУРБО 2+). Но видимо интереснее свои иконки рисовать...


Я эту щтуку (ZSDOS) использовал в своем недописанном CPM-эмуляторе для Спринтера. Вот некоторые замечания:
1) К этой штуке надо писать BIOS, а это занятие не тривиальное (хотя бы потому, что надо имитировать в памяти или еще как-то образ и заголовки CP/M дискет, т.к. запросы в BIOS из ZSDOS идут на достаочно низком уровне абстракции)
2) CP/M работает ТОЛЬКО в 64Кб и запускает программы ТОЛЬКО с адреса 0100h что в стандартных спектрумах нереализуемо по идеологическим соображениям (смещение в область над ROM как например ZXCPM - это уже не то, т.к. CP/M сильна количеством написанного под него ПО)
3) В ATM Турбо 2+ (единственный производимый клон спектрума) оно и так есть - зачем что-то еще городить? ;)

siril
25.02.2005, 08:07
Как насчёт того чтобы портировать UZIX с MSX? AFAIK единственный работающий клон юникса под z80.

CHRV
25.02.2005, 10:31
Как насчёт того чтобы портировать UZIX с MSX? AFAIK единственный работающий клон юникса под z80.

Надо чтобы хотя бы какаянить рабочая группа этим занялась.

Сейчас занимаются серьезно только несколькими ОС:

1) IsDOS - Женя Илясов и сотоварищи, в основном дописывают ПО и конвертируют ПО под ИзДОС
2) TASiS - клон IsDOS заточенный под экран АТМ, занимается этим ОДИН человек Юра Корсунин (уважаю)...

Заявлены целые кучи ОСей, но реальная работа над ними мало ведется, да и перпектив там не видно, т.е. я не вижу причин почему люди должны переползать именно на эту ось:
1) AquaDoors
2) Pinix
3) ......

CHRV
25.02.2005, 10:36
Я эту щтуку (ZSDOS) использовал в своем недописанном CPM-эмуляторе для Спринтера. Вот некоторые замечания:
1) К этой штуке надо писать BIOS, а это занятие не тривиальное (хотя бы потому, что надо имитировать в памяти или еще как-то образ и заголовки CP/M дискет, т.к. запросы в BIOS из ZSDOS идут на достаочно низком уровне абстракции)
2) CP/M работает ТОЛЬКО в 64Кб и запускает программы ТОЛЬКО с адреса 0100h что в стандартных спектрумах нереализуемо по идеологическим соображениям (смещение в область над ROM как например ZXCPM - это уже не то, т.к. CP/M сильна количеством написанного под него ПО)
3) В ATM Турбо 2+ (единственный производимый клон спектрума) оно и так есть - зачем что-то еще городить? ;)
В частности меня не устраивает в CP/M достаточно убожеская и ограниченная файловая система... ВОт над этим поработать было бы неплохо!

caro
25.02.2005, 11:40
В частности меня не устраивает в CP/M достаточно убожеская и ограниченная файловая система... ВОт над этим поработать было бы неплохо! А по моему вполне нормальная файловая система для 8-разрядной машины.

CHRV
25.02.2005, 11:45
А по моему вполне нормальная файловая система для 8-разрядной машины.
Камиль, можно одну реплику: ГДЕ КАТАЛОГИ.... :smile:
Органически не переношу "свалку" на диске!

caro
25.02.2005, 11:56
Камиль, можно одну реплику: ГДЕ КАТАЛОГИ.... :smile:
Органически не переношу "свалку" на диске!При небольших обьемах носителей 32 областей USER вполне хватает.
А для упорядочивания библиотек очень хорошо смотрятся LBR-файлы.

CHRV
25.02.2005, 12:20
При небольших обьемах носителей 32 областей USER вполне хватает.
А для упорядочивания библиотек очень хорошо смотрятся LBR-файлы.
Вот я ими и пользуюсь, но USER не очень удобно, например исходники компилять (ты не поверишь я много иногда программирую на реале).
LBR - это уже синтетическое решение и как ты заметил хорошо для библиотек.
Поэтому меня не устраивает дисковая система СП/М в текущем виде. На АТМ тем более нельзя сделать больше шести дисков, причем размер их тоже ограничен (можно конечно динамически заменять диски). А например сейчас с прошивкой-эмулятором ВГ93 готовится пускач для *.trd. Так вот забьется все очень быстро...
Т.е. хотелось бы обьемы побольше.
Но конечно первое это каталогизация, чем очень хорош IsDOS.

dhau
25.02.2005, 17:16
Ну сколько нужно файлов на CP/M дискете? Я не вижу большой пльзы от каталогов. Нефиг файлы плодить! Скромнее надо быть :) :) :)

Насчет Uzix - да - все продумано хорошо, и реально работает, сам пробовал, *НО*, !!!сюрприз-сюрприз!!!, все тормозит просто ужастно. Более ли менее идет только на моей MSX TurboR GT, но в этой машине стоит R800 - недо-рисковский аппаратный эмулятор Z80, который любую Z80 комманду выполняет за один такт и работает на частоте 7MHz! Кто-то из MSX-еров говорил что грубо говоря это примерно как обычный Z80, но разогнанный на 40MHz. Как только все спектрумы обзаведутся Z80 @ 40MHz, можно смело переходить на Uzix :)

По моему iS-DOS всем хорош кроме отсутствия большого количества ПО. По количеству ПО (http://pentaro.blogspot.com/2005/02/cpm-documentation-online.html) (но не игр) CP/M просто все рекорды бьет. Turbo Pascal 3 на CP/M - это сила, а не недоделка в духе HiSoft C и Pascal под спектрум

А если нужны каталоги, то быстрее надо брать MSX-DOS 2.41 и перерабатывать под Spectrum. Вот это и в правду крутая дисковая система: работает быстро, поддерживает FAT12 и FAT16, на винчестере можно иметь до 32-х разделов по 2 гига (пока еще никто не хакнул ядро под FAT32, но оно и не нужно), приличный менеджер расширенной памяти... Все очень серьезно и не хуже MSDOS 3.30 на PC

CHRV
25.02.2005, 17:29
Ну сколько нужно файлов на CP/M дискете? Я не вижу большой пльзы от каталогов. Нефиг файлы плодить! Скромнее надо быть :)
Не на дискетте а на диске, это немного разные вещи :wink:. Время програмирования на дискетах, уже я давно пережил.


По моему iS-DOS всем хорош кроме отсутствия большого количества ПО. По количеству ПО (http://pentaro.blogspot.com/2005/02/cpm-documentation-online.html) (но не игр) CP/M просто все рекорды бьет. Turbo Pascal 3 на CP/M - это сила, а не недоделка в духе HiSoft C и Pascal под спектрум
Зато все под IsDOS локализованное и почти все поддерживаемое (т.е. морду есть кому бить если чего :wink: ).



А если нужны каталоги, то быстрее надо брать MSX-DOS 2.41 и перерабатывать под Spectrum. Вот это и в правду крудая дисковая система: работает быстро, поддерживает FAT12 и FAT16, на винчестере можно иметь до 32-х разделов по 2 гига (пока еще никто не хакнул ядро под FAT32, но оно и не нужно), приличный менеджер расширенной памяти... Все очень серьезно и не хуже MSDOS 3.30 на PC
Вот именно, а все эти FAT от ПЦ у меня вызывают депрессию, такие тормоза спеку не нужны!

Shaos
25.02.2005, 18:30
А если нужны каталоги, то быстрее надо брать MSX-DOS 2.41 и перерабатывать под Spectrum.

Засланцы! Засланцы! "MSX-DOS Copyright (c) Microsoft..." :wink:

dhau
25.02.2005, 19:28
Засланцы! Засланцы! "MSX-DOS Copyright (c) Microsoft..." :wink:

Ну и? Работает отлично, продумано на века вперед. Расширяемость предусмотрена с самого начала. Полная совместимость сверху в низ с CP/M. Все фичи, которые на спеке все еще изобретают - встроены (каталоги, поддержка RTC и штампов изменения файлов). Кроме того - "обламись старуха, мы на корабле":

MSX-DOS 2.41 (c) 1990, 1991 ASCII Corporation

Микрософт продал все права на MSX фирме ASCII еще в 1985-м году, за пять лет до выхода MSX-DOS 2.x

Shaos
26.02.2005, 03:17
Ну и? Работает отлично, продумано на века вперед. Расширяемость предусмотрена с самого начала. Полная совместимость сверху в низ с CP/M. Все фичи, которые на спеке все еще изобретают - встроены (каталоги, поддержка RTC и штампов изменения файлов). Кроме того - "обламись старуха, мы на корабле":

MSX-DOS 2.41 (c) 1990, 1991 ASCII Corporation

Микрософт продал все права на MSX фирме ASCII еще в 1985-м году, за пять лет до выхода MSX-DOS 2.x

А ну ежели продал - то ладно :wink:

Когда винду продаст - зовите, бум портировать на спектрум :smile:

breeze
31.03.2005, 00:22
Засланцы! Засланцы! "MSX-DOS Copyright (c) Microsoft..." :wink:

вау! а ты не знал что в MSX прошитый BASIC тоже от microsoft ? :)

Ne01eX
19.07.2005, 14:41
Блин, пока читал ваши споры про рулезность осей забыл про че тред начинался... :) Вот такой вот вопрос имеется - кто-нибудь из русскоговорящих перцев CP/M (ой, каких тут только клонов не поназывали, потому я просто обобщу :)) еще поддерживает?

Максагор
19.07.2005, 16:33
Блин, пока читал ваши споры про рулезность осей забыл про че тред начинался... :) Вот такой вот вопрос имеется - кто-нибудь из русскоговорящих перцев CP/M (ой, каких тут только клонов не поназывали, потому я просто обобщу :)) еще поддерживает?

Я пишу утилитки под ATM-версию CP/M. Правда с использованием специфических портов этого ZX-клона (стараюсь по возможности к ним не обращаться, но не всегда это возможно), так что большинство прог только на ATM и пойдет.

caro
20.07.2005, 08:18
Блин, пока читал ваши споры про рулезность осей забыл про че тред начинался... :) Вот такой вот вопрос имеется - кто-нибудь из русскоговорящих перцев CP/M (ой, каких тут только клонов не поназывали, потому я просто обобщу :)) еще поддерживает?Для Кворумов CP/M является базовой осью.
Можешь скачать эмулятор Кворума: [http://zx.pk.ru/attachment.php?attachmentid=539],
и образ одного из системных дисков CP/M: http://zx.pk.ru/attachment.php?attachmentid=541]
На системном диске в USER [D] есть каталог дисков системных и игровых.
Если что-то заинтересует могу желающим выслать.

vasstr
02.12.2005, 15:41
Много линков на CP/M ресурсы, в т.ч. и для z80/Spectrum
http://vrchance.net/Computers/Software/Operating_Systems/CPM

ЗЫ: Для "Байт 01" с "КВУ 03, 04" CP/M также являлась основной операционной системой. К сожалению на данный момент ни эмулятора, ни образов дискет найти не ударось.

caro
02.12.2005, 16:15
Для "Байт 01" с "КВУ 03, 04" CP/M также являлась основной операционной системой. К сожалению на данный момент ни эмулятора, ни образов дискет найти не удалось.Может у кого сохранился все таки системный диск. Многое можно было бы прояснить по BIOS.

Shaos
03.12.2005, 05:02
вау! а ты не знал что в MSX прошитый BASIC тоже от microsoft ? :)

Знал-знал. Просто решил народ просветить - сыграть так сказать на нелюбви спектрумистов к мелкомягким...

maximk
12.03.2006, 17:00
А есть исходники CP/M BIOS-а хоть для какого-нибудь спектрум клона?