Welcome, Guest. Please login or register.


Author Topic: EXOS (Read 113441 times)

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXOS
« Reply #15 on: 2013.April.02. 17:17:48 »
Ok, nem tudom mit neztem be tegnap, ha megint osszeakadok vele, akkor szolok, most megneztem egy exdos- t, es a 20- on van EXOS_ROM a 21- en pedig valoban nincs.

Szoval akkor osszefoglalom.

Mostmar akkor tudjuk mi a tukrozodes, ok. Tudjuk hogy a hw adja, hogy egy rom tukrozodik- e vagy sem. (Arra akkor meg nem volt valasz, hogy a tukrozodes kiszurese akkor egy binaris osszehasonlitas az osszes tobbi rommal ?) RAM ugye ilyen modon nem tukrozodhet, ez csak a romoknal engedelyezett.

Namost ROM- oknal is csak a 4,5,6,7 helyeknel van gyarilag ( EXOS 21 ) tukrozodes kiszures, tobbi helyen csak 16- osaval vannak tesztelve eleve a szegmensek, es a 16- tal kezdodo ROM- ok kozott nincs tukrozodeskiszures.

Ha viszont egy rom nagyobb mint 16kb AZ ATTOL MEG TELJESEN LATSZODNI FOG a z80- nak, csak az EXOS 21 nem ad lehetoseget a 16kb- on feluli reszekre bovitoket helyezni. De attol meg az eredeti EXDOS is igy mukodik, hogy a 32K EXDOS elso fele egy rom bovito, a masodik fele meg csak kod, amit az elso fele (a rom bovito) hasznalni tud.

Jol beszelek ?
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14722
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS
« Reply #16 on: 2013.April.02. 21:22:39 »
Quote from: Z80System
Arra akkor meg nem volt valasz, hogy a tukrozodes kiszurese akkor egy binaris osszehasonlitas az osszes tobbi rommal ?
Az eredeti EXOS teszt az első 64 bájtot hasonlítja össze, 07h-04h szegmenseken.
A 2.3 ugyanígy, de az összes szegmensre, 2.31-től pedig 16-16 bájtot néz a ROM 0000h,1000h,2000h,3000h címein.

Quote
RAM ugye ilyen modon nem tukrozodhet, ez csak a romoknal engedelyezett.
RAM-nál nagy baj a tükröződés, címvezeték szakadás okozhat ilyen hibát. Az eredeti EXOS RAM teszt nem veszi ezt észre, a 2.3 tesztje igen (a jónak bizonyult szegmensek elejére beírja a szegmensszámát, esetleges tükröződés esetén ez felülírodik, a végén egy újabb menetben visszaellenőrzi ezeket, és csak az kerül a RAM listába ahol megörződött a beírt érték. Ezért pörög elsőként a TESTED számláló, majd végül az OK számláló).

Quote
Jol beszelek ?
Igen.

Annyit még hozzá lehet tenni, hogy a 2.1-nek nem látszódó ROM-okat be lehet láncolni a Zozotools RL parancsával.
Például egy 2.1-es gépen van a MICROTEAM kártya 30-as foglalatában egy 64K EPROM Zozotools (30-31h) és EPDOS (32-33h) programokkal.
Kell egy EXDOS.INI:
EPDOS
RL NEW 32h,30h,20h,04h,01h

Első körben az EPDOS parancs nem fut le, mivel az még nincs a rendszerben. Az RL parancsal definiálunk új ROM listát (EPDOS, ZT, EXDOS, BASIC, WP), így a következő körben már bent lesz az EPDOS, és így oda lép az EXDOS.INI futtatásakor.
(Elsőként így lehetett kihasználni a nagyobb EPROM-okat bővítőkártyán, később jött az EXOS fejlesztés project.)

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXOS
« Reply #17 on: 2013.September.04. 23:04:21 »
Talan jo lesz ebbe a topic-ba :) A wdemo parancsomat nezegetem JSep-ben peldanak. Egy valami szoget utott a fejembe: hogyan lehet ezt leallitani? :) Mert ugye a teljes puffert listazom most mar, ami az index.hu-nal kvazi kisse hosszu ... Ha pl egy dir a: a parancs, az stop gombbal megallithato. Nu, ezt szeretnem tudni, hogy ezt hogyan implementaljak, hogy en is meg tudjam csinalni. Lekerdezik egyszeruen a billentyuzetet idonkent? Most a wdemo az ugye csak annyi, hogy varok max 1K puffert az emutol (mely elegge el nem itelheto modon beleirja a netlinkfs.rom image vegebe a memoriaba ...), azt exos 8 hivassal kiirom, majd kerem a kovetkezo max 1k-t, amig van mit atadni igy 1K-nkent persze. Meg ha az exos 8 hivasok koze teszek billencsvizsgalatot, az is kisse lassan fog jonni, hiszen lehet 1K-s mereten dolgozik az exos eppen h kiirja. Sorokra a puffer atadast nehezen tudnam lebontani mert uaz a mechanizmus van binaris adatra is, ahol eleve nincs is ertelme a soroknak, nem ugy mint text printnel. Otlet?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14722
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS
« Reply #18 on: 2013.September.05. 10:42:48 »
A szoftver megszakítást nézik, pl az EXDOS-ból:

Code: ZiLOG Z80 Assembler
  1. lc4b2:  LD      A,(0BFF2H)      ;FLAG_SOFT_IRQ
  2.         CP      20H             ;?STOP
  3.         RET     NZ
  4.  
  5.         LD      A,0E5H          ;.STOP "A STOP BILLENTYŰ LENYOMVA"
  6.         EX      AF,AF'
  7.         CP      A
  8.         RET
  9.  

Ez a rutin van hívogatva sok helyről.

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXOS
« Reply #19 on: 2013.September.05. 16:48:01 »
Quote from: Zozosoft
A szoftver megszakítást nézik, pl az EXDOS-ból:

Koszi. Implementaltam is, pl most :wdemo index.hu megszakithato, ha nem is azonnal reagal a hasznalt puffer meret miatt (az mellekes, hogy megprobaltam legalabb amator modon par ekezetet is konvertalni az output-ban).

Kicsit mas, megneznel nekem valamit? Lasd a szokasos helyen az emu, inditsd el, aztan amikor az IS-BASIC-hez ersz, stop-old le az emulaciot, es nezd meg a debug ablakot (a vege fele). Ilyesmik:

NetLink: rom entry request, c=2, b=6, cmdstr="EXDOSÿ"
NetLink: rom entry request, c=2, b=6, cmdstr="EXDOSü"
NetLink: rom entry request, c=2, b=6, cmdstr="BASICX"

Mi a bubanat lehet az az extra karakter a vegen? Ez azert is fura, mert lathatoan kiirattam a b register erteket is, ami azt mondja, hogy 6. Ez nem teljesen vilagos nekem, hiszen elvileg az EXDOS nevnel 5 a hosszusag, es ebben az esetben az parancs-string parse-olasara nem 5-el kene hivnia, mivel az EXDOS hosszusaga 5? Amugy ettol eltekintve is: valojaban en a stringet nem a B register alapjan nezem (egyedul a help-nel nezem, hogy nulla-e hogy tudjam, hogy csak a rom "rovid" nevere kivancsi-e, ami latszik pl egy sima :help-nel amire minden rom-ot meghiv, vagy egy adott parancsra), hanem a DE altal mutatott helyrol veszem, ahol ugye az ott levo byte a string hossza, es utana jon maga a string. Viszont ugy tunik aszerint is 6-ot kapok hosszusagra, ami nem stimmel ismet (aztan en keresem meg az elso szokozt stb, ha pl parameterek vannak). Az is erdekes, hogy ettol fuggetlenul latszolag mukodik minden, de akkor miert fordulnak elo ezek az anomaliak? Bar eros a gyanum, hogy nyilvan en rontok el (vagy nem ertek) valamit, csak akkor jo lenne tudni, hogy mi a bibi :)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14722
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS
« Reply #20 on: 2013.September.05. 17:09:34 »
Ezek nem felhasználó parancsok, hanem ROM-ok közötti komunikáció:
"EXDOS",0FFH    ;EXDOS bővítőktől az általuk kezelt meghajtók adatainak lekérdezése
"EXDOS",0FDH    ;EXDOS bővítő utólagos beláncolása
"EXDOS",0FCH    ;EXDOS bővítések hidegindítási inicializálása
"EXDOS",0FBH    ;EXDOS bővítések melegindítási inicializálása

"BASICX" IS-BASIC bővítések lekérdezése

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXOS
« Reply #21 on: 2013.September.05. 17:11:36 »
Quote from: Zozosoft
Ezek nem felhasználó parancsok, hanem ROM-ok közötti komunikáció:
"EXDOS",0FFH    ;EXDOS bővítőktől az általuk kezelt meghajtók adatainak lekérdezése
"EXDOS",0FDH    ;EXDOS bővítő utólagos beláncolása
"EXDOS",0FCH    ;EXDOS bővítések hidegindítási inicializálása
"EXDOS",0FBH    ;EXDOS bővítések melegindítási inicializálása

"BASICX" IS-BASIC bővítések lekérdezése

Wow, szoval ez teljesen normalis, az EXOS is jol mux, meg en se szurtam el semmit, max nem ertettem :) Koszi szepen!

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS
« Reply #22 on: 2013.November.22. 18:42:33 »
a melegindítási cím bárhol lehet a nullás lapon?
csak azért kérdezem, hogy van értelme annak, hogy a 28h-ra van állítva a reset, és oda van másolva egy JP xxxx utasítás
*** Speicherplatz zu klein

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14722
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS
« Reply #23 on: 2013.November.22. 18:45:16 »
Bárhol.
Így első hallásra nincs értelme, hacsak nincs belső reset hívás a programban RST 28h-val.

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS
« Reply #24 on: 2014.July.07. 16:09:02 »
editor-ral kapcsolatban volna kérdésem:
ha az FLG_EDIT változót 000101xx-re álltom (lásd: parancssor olvasása BASIC-ből), és küldök egy EXOS 6-ot, akkor a BC-nek milyen értéket adjak? Hiszen nem tudom, hogy hány karaktert akarok olvasni... Vagy tök mindegy, állitsam akkorára, amekkora a maximális mérete lehet annak a sornak, amit olvasni akarok, és nem lesz gond?

érdekes, hogy pl. a HiSoft Pascal-ban karakterenként olvasnak az editor-ról, de véleményem szerint itt lehetett volna EXOS 6-tal is olvasni egy sort:
Code: [Select]
;reads one line from editor:
  ;input: -
  ;output: HL=15aeh (the typed line is copied here, last char is chr(0))
l037b:  push    bc
        push    de
        ld      hl,l15ae         ;editor-puffer
        push    hl
l0381:  ld      a,121
        exos    5                ;reads a char from editor: (#121)
        or      a
        jp      nz,ErrorEXOS
        ld      a,b             ;A:=ascii code of char
        ld      (hl),a          ;put it to (HL)
        inc     hl
        cp      10              ;=LF?   
        jr      nz,l0381        ;if not LF, then read one more character
        dec     hl
        ld      (hl),00h
        pop     hl
        pop     de
        pop     bc
        ret     
*** Speicherplatz zu klein

Offline Povi

  • EP addict
  • *
  • Posts: 2296
  • Country: hu
    • http://povi.fw.hu
Re: EXOS
« Reply #25 on: 2014.July.07. 16:13:09 »
5-ös fejlécű program esetében a 100h alatti cimeken hol lehet garázdálkodni?
értelemszerűen 30h 38h környékén nem, de mi van 0-30h-ig? Tehetek oda saját rutinokat, amiket majd RST-vel érek el?
*** Speicherplatz zu klein

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14722
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXOS
« Reply #26 on: 2014.July.07. 16:25:39 »
Quote from: Povi
5-ös fejlécű program esetében a 100h alatti cimeken hol lehet garázdálkodni?
értelemszerűen 30h 38h környékén nem, de mi van 0-30h-ig? Tehetek oda saját rutinokat, amiket majd RST-vel érek el?
Természetesen. És 5Ch-FFh is szabad.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXOS
« Reply #27 on: 2014.August.22. 16:57:14 »
Az EP -ben ugye 9 pixelsor magas egy karakter, és emlékeim/feltételezéseim szerint ez a 9 pixelsor mindenhol él, nem csak karakteres módoknál,
tehát mivel az exos karakteresével engedi a videolapokat specifikálni, ezért ez a 9 függőleges pixelsoros szprzó ez mindenhol ott lesz.

Az lenne a kérdés hogy egy a 9 pixelsoros magasság milyen módón és szinten van az exos -ba huzalozva ? Módom van ezt átállítani, tudok csinálni 8 pixel magassággal operáló karaktereket ? Exos értelemben gondolom, nem hardveresen. Ha nem is egy érték (mondjuk karakter magasság) beállításával, de milyen szintű változtatással, lehet -e ezt módosítani 8 pixelre mondjuk ?
Z80 System

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXOS
« Reply #28 on: 2014.August.22. 19:52:59 »
Ennyire _en_ biztos nem ismerem az EXOS-t, de szerintem a kovetkezokeppen lehetne: az EP hw text modban hasznalt karakterkeszlet definicio kicsit mas, mint a legtobb mas gepen. C64-en pl ugye az elso byte az elso karakter elso sora, utana az elso karakter masodik sora, egeszen a nyolcadikig (most tekintsunk el attol, hogy inkabb nullatol szokas szamozni), utana jon a masodik karakter, stb. EP esetben nem igy van: szepen sorban ott az osszes karakter elso sora, aztan a kovetkezo sora az osszes karakternek, stb. Ennek elonye ugye az, hogy csokkentheto egy a karakterkeszlet atdefinialasa nelkul a karaktermagassag (max nyilvan nem latszik az osszes sora). A karakter magassadot pedig az LPT-ben levo LPB-k altal kepviselt "sc" ertek jelzi. Magyaran en  a kovetkezo eljarast tudom elkepzelni:

* exos segitsegevel hwtext modban video channel nyitas, lap megjelenites stb
* LPT kezdocimenek lekerdezese
* az egyes karaktersorokat jelento LPB-kben egy-egy byte (LPB altal kepviselt scanline-ok szama, "sc") megvaltoztatasa
* mivel igy pl 25 sor eseten 25 scanline-al kevesebb lesz, ezt kompenzalni kell valahol

Nyilvan lehet egyszerubb tok sajat LPT felepitese, ha tiszta lappal akar indulni az ember, viszont ez talan egy gyors megoldas.

Majd az okosabbak megmondjak, hogy igazam van-e, de az is elkepzelheto, hogy ez joval egyszerubben megoldhato ilyen mokolas nelkul is :-) Amugy a primo emulatoromban hasonlo dolgot csinalok, nem sajat LPT, hanem "atfaragom" a meglevo EXOS altal beallitott LPT-k egyes LPB-eit.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXOS
« Reply #29 on: 2014.August.22. 19:57:10 »
Ez nem lenne jó (nekem, vagy max csak addig, míg az exos nem nyúlna újra az lpt -hez), mert ő megint arra frissítené, amire ő akarja.

Exos kompatibilisebb megoldás iránt érdeklődnék.
Z80 System