Docela by mne zajimalo jaky prekladac C se pouzival realne na Sharp MZ800 mezi lety 1986-1992. Kdo ma jakou zkusenost tak napiste. Radek
Celé vlákno · 9 zpráv
Re: prekladac c
Michal Hučík SHARP MZ-800
Radku, otazkou je, zda se vubec pouzivalo. Pokud ano, tak zrejme CP/M HI-TECH C, ktere prekladalo do ASM a vysledek se pak kompiloval krizovym makro assemblerem od Microsoftu. Nekde jsem ho mel na diskete. Tohle cecko se u nas rozsirilo v nekompletni podobe - zrejme ze Sharpklubu Praha. O zadnem jinem cecku jsem na Sharpu neslysel. Chybely v tom nejake hlavickove soubory a asi i nejaka knihovna. Dusledkem bylo, ze ceckove programy to sice umelo kompilovat (neskutecne pomalu, jak uz to v cp/m byva :), ale neumelo to vyrobit kod, ktery by plne vyuzival systemove sluzby cp/m. Mam pocit, ze tam chybely predevsim funkce pro praci s diskem. Bez dopsani tech ztracenych knihovnich funkci (mozna, ze chybely fakt jen headery) se s tim dal napsat akorat tak "Hello world!". Asi tak pred 5 lety jsem se pokousel sehnat ty chybejici soubory a narazil jsem na netu na nejakeho cloveka ze zahranici, ktery mel na webu seznam vsech moznych verzi programovacich jazyku pro cp/m. Tohle konkretni C tam mel ve stejne podobe, jako ja. Kdyz jsem si s nim psal, tak jsme dospeli k zaveru, ze se zrejme dostala do sveta jen ta jedna disketa s poskozenymi filaty. Kazdopadne ceckove kompilery pro cp/m existuji. V jednom z nich naprgal Jakub Ladman toolsy pro jednu z prvnich verzi Unikarty. Osobne pokud bych se OPRAVDU chtel zabyvat programovanim v C pro cp/m, tak bych si asi napsal vlasni knihovny a pak bych to linkoval v SDCC. Michal Dne 27.8.2013 2:50, Radek Suk (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (13 řádků)
> > > Docela by mne zajimalo jaky prekladac C se pouzival realne na Sharp > MZ800 mezi lety 1986-1992. Kdo ma jakou zkusenost tak napiste. > > Radek > > > > --- > POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen. > Více informací: http://goo.gl/b99cI >
Re: prekladac c
Pavel Železo SHARP MZ-800
Zobrazit citovaný text
---------- Původní zpráva ----------
Od: Radek Suk (sharpemupandora.cz) <suk[doména skryta]>
Datum: 27. 8. 2013
Předmět: prekladac c
Docela by mne zajimalo jaky prekladac C se pouzival realne na Sharp
MZ800 mezi lety 1986-1992. Kdo ma jakou zkusenost tak napiste.
Radek
---
POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen.
Více informací: http://goo.gl/b99cI
Re: prekladac c
Jakub Ladman SHARP MZ-800
Ahoj Já jsem stahnul Hitech-C pro Z80 pod CP/M přímo ze stránek firmy Hitech. Nevím jak teď ale tehdy stále prodávala kompilátory např pro PIC, ale tento už byl ke stažení zdarma. Nabyl jsem dojmu že s 2MB RAMdiskem by to mohlo překládat docela použitelně. Při práci s disketou (780KB) tomu často došlo místo a protože to zapisovalo často a po malých blocích, selhávalo to a spadlo při disk erroru, který byspravil retry. (na 1440KB disketě - s unikartou to z neznámých, nebo zapomenutých, důvodů padá) Nicméně takový ramdisk jsem nikdy neměl takže na tom jsem skončil. Teď na to nemám čas, ale příležitostně najdu ten archiv s kompletním překladačem - mimochodem, se správným přepínačem překládá rovnou do binárky (není potřeba používat externí asm) a jsou tam i funkce pro práci se službami cp/m. Ale sdcc je lepší volba, pokud člověk netrvá na tom, překládat přímo nacílovém železe (což je blbost). Momentálně bojuju s C pro i8080 pro PMD85, nechci se zde rozkecávat, protože to sem nepatří, ale tam je situace o poznání horší. Existuje SmallC-85, který umí i8080 a i8085, jede na linuxu a win, ale proti sdcc je pramálo kompatibilní se standardním C a navíc generuje krutě neoptimální kód. Používám to pro vytváření spojovací kostry mezi asm rutinami (protože nejsem dobrý assemblerista) Jakub Ladman Dne Út 27. srpna 2013 08:11:43 Michal Hučík (sharpemupandora.cz) napsal(a):
Zobrazit citovaný text (44 řádků)
> Radku, otazkou je, zda se vubec pouzivalo. Pokud ano, tak zrejme CP/M > HI-TECH C, ktere prekladalo do ASM a vysledek se pak kompiloval krizovym > makro assemblerem od Microsoftu. Nekde jsem ho mel na diskete. Tohle > cecko se u nas rozsirilo v nekompletni podobe - zrejme ze Sharpklubu > Praha. O zadnem jinem cecku jsem na Sharpu neslysel. > > Chybely v tom nejake hlavickove soubory a asi i nejaka knihovna. > Dusledkem bylo, ze ceckove programy to sice umelo kompilovat (neskutecne > pomalu, jak uz to v cp/m byva :), ale neumelo to vyrobit kod, ktery by > plne vyuzival systemove sluzby cp/m. Mam pocit, ze tam chybely predevsim > funkce pro praci s diskem. Bez dopsani tech ztracenych knihovnich funkci > (mozna, ze chybely fakt jen headery) se s tim dal napsat akorat tak > "Hello world!". > > Asi tak pred 5 lety jsem se pokousel sehnat ty chybejici soubory a > narazil jsem na netu na nejakeho cloveka ze zahranici, ktery mel na webu > seznam vsech moznych verzi programovacich jazyku pro cp/m. Tohle > konkretni C tam mel ve stejne podobe, jako ja. Kdyz jsem si s nim psal, > tak jsme dospeli k zaveru, ze se zrejme dostala do sveta jen ta jedna > disketa s poskozenymi filaty. > > Kazdopadne ceckove kompilery pro cp/m existuji. V jednom z nich naprgal > Jakub Ladman toolsy pro jednu z prvnich verzi Unikarty. > > Osobne pokud bych se OPRAVDU chtel zabyvat programovanim v C pro cp/m, > tak bych si asi napsal vlasni knihovny a pak bych to linkoval v SDCC. > > Michal > > Dne 27.8.2013 2:50, Radek Suk (sharpemupandora.cz) napsal(a): > > Docela by mne zajimalo jaky prekladac C se pouzival realne na Sharp > > MZ800 mezi lety 1986-1992. Kdo ma jakou zkusenost tak napiste. > > > > Radek > > > > > > > > --- > > POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen. > > Více informací: http://goo.gl/b99cI > > --- > POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen. > Více informací: http://goo.gl/b99cI
Re: prekladac c
+GAMA SHARP MZ-800
Zobrazit citovaný text (4 řádky)
>Já jsem stahnul Hitech-C pro Z80 pod CP/M přímo ze stránek firmy Hitech. >Nevím jak teď ale tehdy stále prodávala kompilátory např pro PIC, ale tento už >byl ke stažení zdarma.
Hitech C se používá i na platformě MSX, ale je to dáno tím, že MSX DOS má volání kompatibilní s CP/M a tak není třeba knihovny upravovat pro ROM služby Sharpa (nehledě na to, že na MSX si vytvořili knihovnu LIBDOS2 pro služby MSX-DOS2).
Zobrazit citovaný text (3 řádky)
>Momentálně bojuju s C pro i8080 pro PMD85, nechci se zde rozkecávat, protože >to sem nepatří, ale tam je situace o poznání horší.
Bratři Bórici na PMD používají BDS C. (Z BDS C je odvozeno i HiSoft C pro ZX Spectrum, Amstrad CPC a měl jsem dojem, že to někdo "snad možná asi" zkoušel upravitl i pro Sharp, ale třeba se pletu).
Re: prekladac c
Radek Suk SHARP MZ-800
Michale urcite to par lidi pouzivalo. Ja osobne ne ale treba jeden Sharpista z Liberce v tom napsal celeho commandera (neco jako NC) pro Sharpa - bohuzel to prislo pozde a tak to neni zname. Melo to uvnitr blokaci proti kopirovani a tak to nejde spusti pod beznou cp/mkou. Uvidime co kdo napise o prekladacich. Osobne dam prednost tomu C prekladaci u ktereho bude navod a samozrejme i funkcni knihovny. Dve zajimave stranky jsou http://www.aztecmuseum.ca/compilers.htm#cpm86 a http://floppysoftware.vacau.com/c_compilers.html. Myslim ze maly program by se dal prekladat primo pod Sharpem. Kdyz by se to delalo tak, ze opravdu by ze kompilovala jen ta cast co by se prave programovala a ostatni by se jen linkovalo tak by to nemuselo byt kriticke. Optimalizaci bych zapinal jen vyjimecne, pri ukonceni prace na modulu. Osobne to budu delat na ramdisku a tak problemy s FDD mne netrapi.
Jakube i prekladac pro 8080 muzeme pouzit pro Sharpa - sice nevyuzijeme vsechny moznosti procesoru ale i SDCC nevyuziva druhou zalozni banku registru a tak i zde by to slo zlepsit kdyz by se hodne chtelo. SDCC je asi nejlepsi co ted existuje. Manual ale bohuzel je psan pro jine procesory a tak pro Z80 neni idealne napsany. Rada veci je roztahane popsana pro jine procesory a tak se to musi precist cele a pochopit ze i toto se da pouzit pro Z80. Az dodelam par testu tak popisu co jsem zjistil, delam si odkazy na cizi stranky kde je tento program pro Z80 popsan. Cele se toci okolo CRT0 knihovny a tu chci nejak sikovne udelat aby to bylo univerzalni jak pro MZF tak pro COM. Bohuzel i SDCC je na novem superstroji docela pomaly a to kdyz se zapnou optimalizace a soucasne se preklada ovladac pro FAT, toto je asi nejhorsi kombinace co se da vymyslet :-). Tak kdo si bude hrat s SDCC tak at si nezapina nejlepsi optimalizaci. Bezna --max-allocs-per-node je nastavena na 3000 a ta staci. Nastaveni na 100000 dela sice lepsi kod ale opravdu to obcas trva. Nastavit vice je uz uplne zbytecne.
Jakube ted existuje mala mailova skupinka lidi co se zajima o prekladac pro 8085. Soucasne se zajimaji i o Ch376, coz je pro mne prijemne prekvapeni, takze az se po prazdninach rozjede komunikace (klicova osoba je na dovolene) tak i zde budou pouzitelne informace pro Sharpa. Videl jsi jiz Small C od Romana Fulka - novy prekladac pro 8085 ze Slovenska?
Radek
Radku, otazkou je, zda se vubec pouzivalo. Pokud ano, tak zrejme CP/M HI-TECH C, ktere prekladalo do ASM a vysledek se pak kompiloval krizovym makro assemblerem od Microsoftu. Nekde jsem ho mel na diskete. Tohle cecko se u nas rozsirilo v nekompletni podobe - zrejme ze Sharpklubu Praha. O zadnem jinem cecku jsem na Sharpu neslysel.
Chybely v tom nejake hlavickove soubory a asi i nejaka knihovna. Dusledkem bylo, ze ceckove programy to sice umelo kompilovat (neskutecne pomalu, jak uz to v cp/m byva :), ale neumelo to vyrobit kod, ktery by plne vyuzival systemove sluzby cp/m. Mam pocit, ze tam chybely predevsim funkce pro praci s diskem. Bez dopsani tech ztracenych knihovnich funkci (mozna, ze chybely fakt jen headery) se s tim dal napsat akorat tak "Hello world!".
Asi tak pred 5 lety jsem se pokousel sehnat ty chybejici soubory a narazil jsem na netu na nejakeho cloveka ze zahranici, ktery mel na webu seznam vsech moznych verzi programovacich jazyku pro cp/m. Tohle konkretni C tam mel ve stejne podobe, jako ja. Kdyz jsem si s nim psal, tak jsme dospeli k zaveru, ze se zrejme dostala do sveta jen ta jedna disketa s poskozenymi filaty.
Kazdopadne ceckove kompilery pro cp/m existuji. V jednom z nich naprgal Jakub Ladman toolsy pro jednu z prvnich verzi Unikarty.
Osobne pokud bych se OPRAVDU chtel zabyvat programovanim v C pro cp/m, tak bych si asi napsal vlasni knihovny a pak bych to linkoval v SDCC.
Michal
Dne 27.8.2013 2:50, Radek Suk (sharpemupandora.cz) napsal(a):
Docela by mne zajimalo jaky prekladac C se pouzival realne na Sharp MZ800 mezi lety 1986-1992. Kdo ma jakou zkusenost tak napiste.
Radek
---
POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen.
Více informací: http://goo.gl/b99cI
---
POZOR! Provoz systému Pandora.cz bude k 30. listopadu 2013 ukončen.
Více informací: http://goo.gl/b99cI
RE: prekladac c
Jakub Ladman SHARP MZ-800
Jakube ted existuje mala mailova skupinka lidi co se zajima o prekladac pro 8085. Soucasne se zajimaji i o Ch376, coz je pro mne prijemne prekvapeni, takze az se po prazdninach rozjede komunikace (klicova osoba je na dovolene) tak i zde budou pouzitelne informace pro Sharpa. Videl jsi jiz Small C od Romana Fulka - novy prekladac pro 8085 ze Slovenska?
Small C jsem zmiňoval a s Romanem jsem v kontaktu.
Je po použitelné, ale kód je hrubě neoptimální a některé featury standardního C mi tam vysloveně chybí.
Třeba ukazatele na ukazatele, nebo variabilní počet argumentů funkce.
Taky mě sere, že některé chyby v překládaném zdrojáku způsobí pád kompilátoru.
A tak podobně.
Kdybych našel návod jak se přidává (modifikuje) cílový CPU do sdcc, tak bych se do toho i rád pustil.
Bohužel jsem to nebyl schopen nikde najít.
Nevím co je Ch376
Jakub
Re: prekladac c
Michal Hučík SHARP MZ-800
Kdybych našel návod jak se přidává (modifikuje) cílový CPU do sdcc, tak bych se do toho i rád pustil.
Bohužel jsem to neby! l schopen nikde najít.
Vasek se letos pokousel portovat SDCC pro nejaky procesor, ktery nebyl podporovany (ST7 ?). Ale nevim jak dopadnul. On to tady ted asi moc casto necte, ale myslim, ze by te dokazal odkazat alespon na nejaky howto.
Michal
Re: prekladac c
Vaclav Peroutka SHARP MZ-800
Kdybych našel návod jak se přidává (modifikuje) cílový CPU do sdcc, tak bych se do toho i rád pustil.
Bohužel jsem to neby! l schopen nikde najít.
Vasek se letos pokousel portovat SDCC pro nejaky procesor, ktery nebyl podporovany (ST7 ?). Ale nevim jak dopadnul. On to tady ted asi moc casto necte, ale myslim, ze by te dokazal odkazat alespon na nejaky howto.
Michal
Ale jo, občas zavítá - když ho někdo pokopne na Skypu :-) Co se týče portace SDCC, podíval bych se na port Z80. Ten má ted nový alokátor registrů. Jen mám pocit, že pro tvorbu ASM kódu se používá i indexový registr IX. Když si stáhneš zdroják SDCC, první co bych udělal je vytvoření adresáře src/i8080, upravil soubory pro generování Makefile, překopíroval věci ze src/z80, zkusil ./configure;make
Pak v gen.c a gen.h zmenšil počet registrů (záložní sada se na 99procent nepoužívá), vytipoval, kde a jak se používá IX ev. IY a začal předělávat ty části generátoru.
A pak se zkusil přihlásit do sdcc-devel konfery a zeptat se. Port pro Z80 předělával Phillip Klaus Krause a určitě Ti k tomu řekne víc. Bude stát za to i podívat se do archivu té konfery.
Hodně štěstí a času :-)
Vašek