OldComp.cz
https://www.oldcomp.cz/

AzoraDOS :-)
https://www.oldcomp.cz/viewtopic.php?f=37&t=554
Stránka 13

Autor:  azorasoft [ 06.10.2013, 18:29 ]
Předmět příspěvku:  AzoraDOS :-)

Tak jsem založil i toto vlákno, jelikož pokračovat v tomto tématu v sekci představení uživatelů je trochu "out of topic". Můžete argumentovat/kritizovat dle potřeby ;) . Pro nezasvědcené, AzoraDOS je hypotetický operační systém pro Z80CPU, který byl chtěl realizovat:

azorasoft píše:
Spolecnou vlastnosti stavajicich systemu je to, ze nejakym zpusobem vzdy rozsiruji schopnosti systemu puvodniho Spectra (jeho ROM). Ja bych chtel udelat neco z gruntu vlastniho, takovy univerzalni operacni system pro Z80 CPU. Vlastne neco podobneho tu vzdy bylo a to CP/M. Ale ja bych chtel proste prijit s necim novym. Spousta lidi me presvedcovalo o tom, ze to nema smysl, nebude to s nicim kompatibilni a tudiz to nebude nikdo pouzivat. No, maji pravdu, ale co uz, me jde o to, ze to proste chci napsat, bavilo by me to.

Mam uz castecne hotovou analyzu, jak by ktere komponenty mely fungovat. Chtel bych to napsat jako opravdu univerzalni system pro Z80 CPU, kteremu se akorat rekne v jake pametove oblasti by mel system umistit jadro a jak je organizovana pamet cilove platformy. Vzhledem k tomu, ze samotne Spectrum bez ROMky je, de facto, jenom procesor s ULOu, tak ta organizace pameti spociva pouze v tom rict systemu od ktere adresy po kterou se nachazi pamet obrazovky a zbytek je proste volna pamet. V pripade DIVide a Spectra se tedy systemu rekne: jadro je od 0 - 8911, pamet pro jadro je 8912 - 16383, videoram je 16384 - 23295 s definovanou organizaci a 23296 - 65535 (plus/minus samozrejme musime pocitat se zasobnikem) je volna pamet. Tyto informace si system precte v ramci bootu a pak se normalne spusti.


Busy píše:
Aha, no to vyzera zaujimavo, aj ked velke prakticke pouzitie to v dnesnej dobe mat asi nebude. Ale mam zopar otazok:
1. Ake zaznamove media bude system podporovat ? (napr. kazety/diskety/harddisky+CF karty/SD karty/USB mass storage/PC pripojene cez kabel)
2. Mas vymysleny nejaky vlastny filesystem, alebo budes podporovat uz existujuce ? (bsdos/trdos/d40-80/fat16/fat32/ntfs/ext2,3...) ?
3. Bude system umoznovat spustanie beznych programov na danej platforme (napr. pre ZX Spektrum umozni load/save spusty uz existujucich programov) alebo budu musiet pre tento system podporovat len specialne aplikacie vyvinute pre tento system (ako napr. u CP/M) ?
4. Ako budes riesit situaciu, ak sa system nevojde do pameti (samotne jadro a aj pamet pre jadro), ktoru bude mat k dispozcii na danej platforme ?
5. Ako budes riesit situaciu ked nemas k dispozicii naraz nastrankovane jadro a pamet pre jadro ? T.j.ak sa jadro nachadza niekde ale pamet ktoru moze vyuzivat, treba pristrankovat na ukor jadra ?
6. Neuvazujes port systemu aj pre 8080 a 6502 ? Platforiem s tymto procesorom je tiez dost.
7. Niektore platformy umoznuju umiestnit obrazovku na viac miest v pameti (popr. uplne mimo zakladnych 64kB adresovanych procesorom) - budes aj toto nejak podporovat v systeme ?
8. A vobec, budes v systeme podporovat aj viac ako 64kB pameti ? Ako v tom pripade zabezpecis univerzalne ovladanie roznych pametovych layoutov na roznych platformach ?


1. Plně diskový systém, tedy to, co připojím k DivIDE. Nic víc.
2. Pokud ne vlastní, tak FAT16. Závisí na funkcích OS. Pokud nebude stačit FAT16 (např. metadata souborů), tak vlastní.
3. Jednoznačně upravit, žádná kompatibilita.
4. Pamět zde nebude hrát roli. Lehce přiblížím architekturu. Na disku budou soubory *.RUT, což budou relokovatelné strojové rutiny, které budou součástí OS (nebo vlastní, typická struktura programu pro tento OS tedy bude složka se spouštěcím souborem a hromadou souborů *.RUT). Bude existovat jakýsi BIOS se službami, takže v programu pouze řeknu, zavolej tuhle rutinu, předej ji takto data a vrať výsledek. V takovém případě se rutina načte z disku, provede se a paměť se opět uvolní. Dobře navrženému programu tedy těžko dojde paměť :jump: . A i kdyby tak v pozdějších verzích lze implementovat odkládání kódu na disk. Program si můžeme představit jako strom, horní uzel je hlavní (spouštěcí kód), hrany vedoucí od uzlů k uzlům od jeden level níže představují volání služeb OS pro volání dílčích rutin. V paměti nebude nikdy více větví stromu (cesta/část cesty od horního uzlu ke konkrétnímu listu). Pokud bude větev příliš dlouhá, odloží se její část na disk.
5. Moc nechápu dotaz. Ale snad se odpověď skrývá v popisu bodu č.4. Systém bude hodně dynamický.
6. Určitě ne.
7. Ano, toto je jeden ze základních požadavků, mít paměťové oblasti plně konfigurovatelné, neomezovat se na architekturu Spectra.
8. Nebude zapotřebí vzhledem k tomu, že systém nebude s ničím zpětně kompatibilní. Navíc v době Divide a systému popsanému v bodě č.4 nebude zapotřebí žádná "extended" pamět.

Autor:  zz_indigo [ 06.10.2013, 18:43 ]
Předmět příspěvku:  Re: AzoraDOS :-)

azorasoft píše:
Mam uz castecne hotovou analyzu, jak by ktere komponenty mely fungovat. Chtel bych to napsat jako opravdu univerzalni system pro Z80 CPU, kteremu se akorat rekne v jake pametove oblasti by mel system umistit jadro a jak je organizovana pamet cilove platformy. Vzhledem k tomu, ze samotne Spectrum bez ROMky je, de facto, jenom procesor s ULOu, tak ta organizace pameti spociva pouze v tom rict systemu od ktere adresy po kterou se nachazi pamet obrazovky a zbytek je proste volna pamet. V pripade DIVide a Spectra se tedy systemu rekne: jadro je od 0 - 8911, pamet pro jadro je 8912 - 16383, videoram je 16384 - 23295 s definovanou organizaci a 23296 - 65535 (plus/minus samozrejme musime pocitat se zasobnikem) je volna pamet. Tyto informace si system precte v ramci bootu a pak se normalne spusti.


Videoram by OS ako taky nemala zaujimat. To jer vec video subsitemu/drivru/kernalu
Zasobnik si urcuje OS sam takze viacmenej to nieje relevantna informacia pore OS.

Autor:  azorasoft [ 06.10.2013, 18:47 ]
Předmět příspěvku:  Re: AzoraDOS :-)

zz_indigo píše:
Videoram by OS ako taky nemala zaujimat. To jer vec video subsitemu/drivru/kernalu


Tak jasně, driver bude součást OS, to už jsou takové jemné niance :roll: .

Autor:  zz_indigo [ 06.10.2013, 19:41 ]
Předmět příspěvku:  Re: AzoraDOS :-)

azorasoft píše:
zz_indigo píše:
Videoram by OS ako taky nemala zaujimat. To jer vec video subsitemu/drivru/kernalu


Tak jasně, driver bude součást OS, to už jsou takové jemné niance :roll: .


Takze to neches riesit Kernal ramkou z io rutinamy (ala CP/M) ale len loaderom z nejakeho media? Zaujimave. Ale myslim ze to silne pridas na slozitosti z programatorskeho hladiska. (hlavne z dovodu poziadavky na relokovatelnost drivru)

Autor:  zz_indigo [ 06.10.2013, 19:49 ]
Předmět příspěvku:  Re: AzoraDOS :-)

Factor6 píše:
Uz mas nejakou betaverzi nebo aspon screenshot? :D Co to tak sleduju, tak o tom porad jen mluvis a skutek utek :lol:


Dobra analiza znizuje pocet slepich cesticiek. A pri rozpravani si moze usporiadat nazory. Dost problemou v navrhu sa daju najlachsie objavit pri vysvetlovani napadu niekomu dalsiemu.

Autor:  Aki [ 06.10.2013, 21:03 ]
Předmět příspěvku:  Re: AzoraDOS :-)

azorasoft píše:
Mam uz castecne hotovou analyzu, jak by ktere komponenty mely fungovat. Chtel bych to napsat jako opravdu univerzalni system pro Z80 CPU, kteremu se akorat rekne v jake pametove oblasti by mel system umistit jadro a jak je organizovana pamet cilove platformy. Vzhledem k tomu, ze samotne Spectrum bez ROMky je, de facto, jenom procesor s ULOu, tak ta organizace pameti spociva pouze v tom rict systemu od ktere adresy po kterou se nachazi pamet obrazovky a zbytek je proste volna pamet. V pripade DIVide a Spectra se tedy systemu rekne: jadro je od 0 - 8911, pamet pro jadro je 8912 - 16383, videoram je 16384 - 23295 s definovanou organizaci a 23296 - 65535 (plus/minus samozrejme musime pocitat se zasobnikem) je volna pamet. Tyto informace si system precte v ramci bootu a pak se normalne spusti.


Spis 0-8191 jadro, ram pro jadro 8192-16383 ne?

Btw. spectrum ma nelinearne rozvrzenou VRAM, takze bys potreboval "driver" pro zx, a jiny driver zase pro jinou platformu s jinym usporadanim video ram a jinym rozlisenim. Uz v tom vidim problem sjednoceni (viz CP/M na CPC (640x200) vs ZX Spectrum +3 (256x192)). Treba CPC ma volnou RAM od 0 do 49151, od 49152 je VRAM.. ale i tak, nebylo by zajimavejsi preportovat SymbOS pro ZX Spectrum?

Autor:  BruXy [ 07.10.2013, 09:57 ]
Předmět příspěvku:  Re: AzoraDOS :-)

A třeba takovej esxdos ještě pořád nepodporuje dlouhé názvy souborů, takže je tu prostor i pro vylepšování stávajících systémů :P

Autor:  SCjoe [ 07.10.2013, 19:15 ]
Předmět příspěvku:  Re: AzoraDOS :-)

Průzkum z pivních diskusí: stačila by FAT32 s funkčním zápisováním a podporou LFN. Jinak po půlce života strávené pískáním pásek trávíme další půlku převodem souborů na CF a SD karty. Amen. A není nečitelnost normální windowsky formátované USB paměti na ZX Spectrum v rozporu s nějakou směrnicí EU? :-O

Autor:  Jiiira [ 08.10.2013, 12:46 ]
Předmět příspěvku:  Re: AzoraDOS :-)

Ono je na jednu stranu milé "hrajkať sa" (krásný slovenský výraz ;) ) s nějakou myšlenkou, protože myšlenka je krásná a čistá, kdežto realizace kolikrát už tolik ne. V tom ho chápu.

Na druhou stranu bych ocitoval Linuse Torvaldse, který, ačkoli s ním v lecčem nesouhlasím, má pravdu v tomhle:

"Talk is cheap, show me the code!"

;)

Autor:  azorasoft [ 08.10.2013, 13:00 ]
Předmět příspěvku:  Re: AzoraDOS :-)

azorasoft píše:
Pochybuju, ze me nekdo nezna . Mym snem je vyrobit novy operacni system pro Spectrum, kteremu jsem jiz udelal dostatecnou reklamu, jeho jmeno kazdy zna a tak se nebudu opakovat . Snad se k tomu dostanu, nez natahnu brka . Jinak jsem byl vasnivym Spectristou od roku 1991 do roku 1996, pak mi rodice koupili DX4 pod podminkou, ze prodam svuj Didaktik M, cehoz jsem tehdy nelitoval, no dnes uz ano...


Tak já myslím, že ne nechvástám a že z výše uvedeného jasně vyplývá, kdy ten systém bude hotový :lol: . Ale vážně, třeba od července jsem na speccyho ještě neměl čas, no, asi čtyři hodiny a ty jsem propařil u Galactic Gunners :oops: .

Autor:  dex [ 07.12.2013, 17:50 ]
Předmět příspěvku:  Re: AzoraDOS :-)

No, já bych to nadšení trochu zchladil.
Jednak je pořád vidět, že je to nedodělané. Nekonzistence v oddělovačích třeba.
Detekce procesoru není ještě úplně dokonalá, jednou jsem viděl, že to na Didaktiku zdetekovalo 6809 a pak to spadlo.
Stejně tak terminál se mi moc nezdá, dal bych méně znaků na řádek se zlepšením čitelnosti.
Zas se mi líbí, že zabudované příkazy už fungují a i externí utility dělají, co mají, i když zatím jsem našel jen jednu (fixdir).
Hodila by se ale třeba historie, to není jen vymoženost moderních počítačů. historii má třeba i Toolkit na Sinclairu QL.
Každopádně na tom bude ještě hodně práce.
Taky bude potřeba přidat AzoraDOS do bootovacího menu DivIDE, aby to člověk nemusel jak jedinec s IQ 60 přeflešovávat.

Autor:  sweet128 [ 07.12.2013, 18:00 ]
Předmět příspěvku:  Re: AzoraDOS :-)

dex píše:
Taky bude potřeba přidat AzoraDOS do bootovacího menu DivIDE, aby to člověk nemusel jak jedinec s IQ 60 přeflešovávat.


To určitě můžeme až dá autor svolení. Já osobně bych se přimlouval za to, dát už tuto verzi (viz foto).

Ale už se teším, až toto AZORADOS používat místo MDOS3, který jsem si udělal jen proto, aby překlenul období, než se udělá použitelný systém.

sweet

http://i.imgur.com/iqywwG0.jpg

Autor:  misticjoe [ 07.12.2013, 18:27 ]
Předmět příspěvku:  Re: AzoraDOS :-)

Rozhodně bych ponechal tolik znaků na řádek, kolik jich tam stávajících je. Slabozrací si nasadí brýle. :mrblue:

Autor:  Starej_Mraf [ 07.12.2013, 20:12 ]
Předmět příspěvku:  Re: AzoraDOS :-)

Ciwe, ciwe. Toě lae zmňěna násoru. Tose asi zapšíe do hystorje! :speccy:

Autor:  misticjoe [ 07.12.2013, 22:06 ]
Předmět příspěvku:  Re: AzoraDOS :-)

Pro ty z nás, co nebyli přítomni, nenatočil někdo i videjko?

Stránka 13 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/