Welcome, Guest. Please login or register.


Author Topic: EXDOS (Read 135647 times)

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXDOS
« Reply #255 on: 2014.October.16. 01:09:18 »
Na maga a működés (exdos, exdos.ini, assign) az jónak tűnik,

de úgy látszik nem lehet mindenkinek kedvezni egyszerre:

én szerettem az EXDOS színeit, és nagyon nem szeretem ezt a zöldet ... nem kaphatnánk egy offsetet, ahol át(vissza)hekkelhetjük magunknak a színeket ?

Esetleg jó lenne az eredeti színkombó lista is, hogy ne kelljen keresgetni őket ...
« Last Edit: 2014.October.16. 01:17:15 by Z80System »
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXDOS
« Reply #256 on: 2014.October.16. 01:31:09 »
Második megközelítésben mégsem tűnik olyan jónak egy szempontból, mint a korabbi:

Az van tehát, hogy van egy L partícióm,
és az F: partícióm exdos.ini -jében egyetlen sor van:
:exdos L:

namost ha van L: particio exdos.ini -vel akkor minden király,
de ha nincs, akkor hibaüzenettel lerohad az EXDOS képernyőn ...

korábban mikor a rom -ba volt hekkelve az
:exdos L:
akkor is elindult a basic ha nem talalta az adott exdos.ini -t ...
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14732
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #257 on: 2014.October.16. 09:36:55 »
Fordítsak neked E-L-F EXDOS.INI-s, lila EXDOS-t? :-)

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXDOS
« Reply #258 on: 2014.October.16. 10:02:12 »
Quote
Fordítsak neked E-L-F EXDOS.INI-s, lila EXDOS-t? :-)

Hát az is egyfajta megoldás ... de elég "hardkódolt" fajta ... :)

Ha majd lesz kedved, még az is lehet hogy másnak is kellene majd ... de akkor majd jön valaki, hogy ok, neki is kéne az E,L,F, de neki maradjon zöld,
vagy legyen E,K,F és piros ...

Talán (az image miatt) az E,L,F -es verzió lehetne plusszban (talán...),
a színekre meg adjál meg hekkelési paramétereket, és majd mindenki hekkeli, aki akarja ... nem ?
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: EXDOS
« Reply #259 on: 2014.October.16. 10:20:08 »
Nagyon lassú lenne egy for ciklusos EXDOS.INI keresés ... tehát ott mikor eddig az F: -et nezted, ott egy ciklusban keresned F: -től felfele a létező partíciókon ?

(A ciklus előtt meg után meg azok lennének, amik eddig az F: előtt és után voltak nyilván ... )

És akkor ki ahova teszi az EXDOS.INI -t, az futna, ha sehol nincs, akkor meg semmi ...
Z80 System

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXDOS
« Reply #260 on: 2015.February.03. 01:22:02 »
Lenne kerdesem az EXDOS muszkai leiras kapcsan. FISH hivasoknal:

"Verem a 0. vagy 2. lapon. (EXDOS 1.0 és E: esetén a 2. lapon)". Most az EXDOS 1.0 es E: ugy ertendo, hogy tenyleg 1.0-as EXDOS verzio es csak a ramdisk-nel a 2. lapon kell, hogy legyen a stack, vagy ugye, hogy E: eseten barmelyik EXDOS verzional ez kitetel? Ez elve nekem azert is fura, mert a 2. lapon a rendszerszegmens van, akkor oda kell vmi stack-et is applikalni hivas idejere? Vegulis manapsag mar rakhatom 0-as lapra a stack-et mindig, ugy se valoszinu, hogy EXDOS 1.0-val talalkozom? Vagy az EXDOS 1.0 ugy ertendo, hogy 1.x?

A masik: "2. lap = FISH RAM területet tartalmazó szegmens, általában a rendszerszegmens." Altalaban? Mi lehet meg? Peldakban en mindig latom, hogy fixen 0xFF megy a 0xB2 portra, oszt' kesz. Ezek szerint viszont ez igy nem feltetlen igaz mindig, mi a "tokeletes" megoldas erre a problemara?

"Transzfercím használat előtt be kell állítani a felhasználói szegmensregisztereket. (IY-5D) = P0 - (IY-5A) = P3". Ezt most ertsem ugy, hogy ami programban hasznalnek amugy B0...B3 portokon lapzva, azt kell betolni a fenti helyekre, ha ilyen transzferes jatekra van szuksegem? Eleve ez a transzfer se vilagos mit jelent. Azt gondoltam azt, hogy adatot kell atadni/venni ami RAM-ban (nem regiszterben) tortenik, de lathatoan ez nem igaz, mivel pl 4-es FISH funkcio (file keresese) is FCB-ket bizeral, ami szinten ugye a memoriaban van es csak a cimet adom at a FISH hivasnak, megsincs szo semmifele transzferrol. Bocs, lehet hogy ertem kozben, az a transzfer, ha vmit az IX regiszterbe kell pakolni (a cimet).

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14732
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #261 on: 2015.February.03. 09:49:19 »
Most az EXDOS 1.0 es E: ugy ertendo, hogy tenyleg 1.0-as EXDOS verzio es csak a ramdisk-nel a 2. lapon kell, hogy legyen a stack,
Tényleg, mert hibás az 1.0-ban a RAMDISK rutinja:
Code: ZiLOG Z80 Assembler
  1.   EC97  DB B0        IN    A, (B0)
  2.   EC99  F5           PUSH  AF
  3.   EC9A  78           LD    A, B
  4.  *EC9B  D3 B0        OUT   (B0), A
  5.   EC9D  01 00 02     LD    BC, 0200
  6.   ECA0  ED B0        LDIR
  7.   ECA2  FD 7E 1D     LD    A, (IY+1D)
  8.   ECA5  D3 B1        OUT   (B1), A
  9.   ECA7  F1           POP   AF
  10.   ECA8  D3 B0        OUT   (B0), A
Ha a 0-ás lapon volt a verem, akkor amikor elővenné a B0h eredeti értékét, akkor hülyeséget olvas.

A 1.3-ban már így néz ki:
Code: ZiLOG Z80 Assembler
  1.         IN      A,(0B0H)        ;nullás lap
  2.         LD      C,A             ;mentése
  3.         LD      A,B             ;szektort tartalmazó  
  4.         OUT     (0B0H),A        ;szegmens belapozása
  5.         LD      A,C             ;eredeti nullás lap száma
  6.         LD      BC,0200H        ;512 bájt
  7.         LDIR                    ;szektor átmásolása
  8.         OUT     (0B0H),A        ;nullás lap visszalapozása
  9.         LD      A,(IY+1DH)      ;RAMDISK kezdőszegmens száma 
  10.         OUT     (0B1H),A        ;1-es lapra belapoz

Quote
ugy se valoszinu, hogy EXDOS 1.0-val talalkozom?
Milyen céllal írod a programot?
Bármely gyári EXDOS kártyával rendelkező felhasználó esetén 1.0 van...

Quote
Vagy az EXDOS 1.0 ugy ertendo, hogy 1.x?
Nem.

Quote
A masik: "2. lap = FISH RAM területet tartalmazó szegmens, általában a rendszerszegmens." Altalaban? Mi lehet meg? Peldakban en mindig latom, hogy fixen 0xFF megy a 0xB2 portra, oszt' kesz. Ezek szerint viszont ez igy nem feltetlen igaz mindig, mi a "tokeletes" megoldas erre a problemara?
Normál EXDOS rendszer esetén FFh és kész.
Trükkös programok esetén lehet, hogy csinálsz másik RAM területet neki, máshol.

Quote
"Transzfercím használat előtt be kell állítani a felhasználói szegmensregisztereket. (IY-5D) = P0 - (IY-5A) = P3". Ezt most ertsem ugy, hogy ami programban hasznalnek amugy B0...B3 portokon lapzva, azt kell betolni a fenti helyekre,
Igen.

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXDOS
« Reply #262 on: 2015.February.03. 10:45:21 »
Koszi az infokat!

Quote
Milyen céllal írod a programot?

Hat jelenleg sajat magam szorakoztatasara, plusz gyakorlaskeppen es ismerkedeskeppen :) Persze azert csak jo ilyenekre is figyelni, ha esetleg egyszer kiderulne, hogy masnak is hasznos lesz, vagy hasonlo.
Celja meg nagyon nincs, csak jatszok vele, directory olvasas, kiiratas, ilyenek, eddig csak EXOS-al "erintkeztem" programjaimban, gondoltam, megnezem ezt is :)

Quote
Bármely gyári EXDOS kártyával rendelkező felhasználó esetén 1.0 van...

Aha, en abba nem fogok beleutkozni :) de akkor viszont azt hiszem, megis erdemes lenne azert erre figyelnem. Viszont, akkor mi a bevett eljaras a FISH hivasoknal a fenti problema kapcsan? A 2-es lapra a stack-et nehezen tehetnem mert az a rendszerszegmens, vagy onhatalmulag tegyem csak oda a stack-et mondjuk a legalacsonyabb cim kozelebe a szegmensen belul, aztan remenykedjek, hogy nem irok semmit felul? :) Vagy van ott stack-nek kinevezett terulet, amit en is bitorolhatnek? Mert ugye a FISH hivasoknal a 2-es lapra a rendszerszegmens kerul.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14732
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #263 on: 2015.February.03. 11:10:18 »
A legegyszerűbb ha FISH 30-al kérsz egy szektorpuffert és oda teszed az ideiglenes vermet. De mindezt lehet if-elni, hogy akkor ha a verzió kisebb mint 1.2. Esetleg előtte a FISH 27-el hozzáadni egy plusz puffert, hogy ne okozzon lassulást a hiányzó puffer.

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXDOS
« Reply #264 on: 2015.February.03. 13:19:05 »
A legegyszerűbb ha FISH 30-al kérsz egy szektorpuffert és oda teszed az ideiglenes vermet. De mindezt lehet if-elni, hogy akkor ha a verzió kisebb mint 1.2. Esetleg előtte a FISH 27-el hozzáadni egy plusz puffert, hogy ne okozzon lassulást a hiányzó puffer.

Koszi. Az nem megoldas, hogy allokalok addig szegmenseket (video szegmens foglalas miatt ugy is vegig kell menni majdnem - az elso video ram szegmensig -, onnan meg csak egy "ugras"), amig shared segment uzenetet nem kapok, aztan exos boundary-t beallitom (gondolom veremnek fish hivas idejere nem kell tul sok)? Vagy ez tobb problemat vet fel, mint amennyit megold? Nekem, hogy oszinte legyek meg mindig nem tiszta, hogy mi van, ha a rendszerszegmens (0xFF) elfogy, akkor folytatja a 0xFE-n, es erre is fel kell keszulni?
« Last Edit: 2015.February.03. 13:28:28 by lgb »

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14732
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #265 on: 2015.February.03. 13:50:47 »
Lehet úgyis, és igen ez esetben arra is fel kell készülni, hogy az FFh már elfogyott. (Bár ha a program elején csinálod, ez inkább elméleti eshetőség.)

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXDOS
« Reply #266 on: 2015.February.03. 14:55:39 »
Lehet úgyis, és igen ez esetben arra is fel kell készülni, hogy az FFh már elfogyott. (Bár ha a program elején csinálod, ez inkább elméleti eshetőség.)

Bocs, hogy itt ertetlenkedem, de van itt meg egy erdekesseg. Ha en szegmens allokacioval "felzabalom" az osszes szabad szegemnst, amig osztott szegmenst nem kapok, ott bellitok boundary-t, majd elengedem a tobbi szegmenst (ami csak azert kellett hogy odaig eljussak) akkor mi van? Marmint, ha elerkezik a rendszerszegmens "lefele menet" a boundary-ig, akkor is folytatja uj szegmensen (pl 0xFE) es kihagyja azt a "lyukat" amit az osztott szegmens okoz az EXOS szamara? Mert en erzik itt egy kis zavart az eroben: alapvetoen az osztott szegmens fogalma gondolom arra keszult, hogy ha mar elfogyott a memoria, akkor is legyen "valami" ami foleg mondjuk EP64 eseten lehet szerintem realisabb. Igen am, de ha utana felszabaditok egy rakas szegmenst, akkor ez logikailag olyan fura :) Vagy csak nekem van ezzel bajom?

Illetve FISH-ezes meg sok mas kapcsan is eszembe jutott mar, hogy sokszor kobe vesve ott van: rendszerszegmens = FF, holott ugye ez nem feltetlen igaz, mert az nyujtozhat lentebb is, extrem esetben (???) akar a program indulasanak pillanataban is.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14732
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #267 on: 2015.February.03. 15:07:54 »
Vagy csak nekem van ezzel bajom?
Csak neked :-)
A fő lényeg az, hogy a felhasználói program alulról kap RAM-ot, a rendszer meg fentről.

Quote
extrem esetben (???) akar a program indulasanak pillanataban is.
Ebben az esetben már rég nem működik a rendszer :oops:
Pl az EXDOS is belehal, ha nem a rendszerszegmensben kapta meg a RAM-ját.

Offline lgb

  • EP addict
  • *
  • Posts: 3563
  • Country: hu
  • æðsta yfirmaður
    • http://lgb.hu/
Re: EXDOS
« Reply #268 on: 2015.February.03. 15:19:58 »
Csak neked :-)
A fő lényeg az, hogy a felhasználói program alulról kap RAM-ot, a rendszer meg fentről.

Ez teljesen vilagos, csak az altalam vazolt esetben eloall az az allapot, hogy EXOS van "felul", user program "alul" de "kozepen" van egy folt ami a usere, am ezt alulrol es felulrol is kozreveheti nemi szabad RAM :)
Bar gondolom EXOS reszerol az a legegyszerubb viselkedes, hogy ha EXOS boundary van, es beleutkozik, nem megy tovabb, hiaba lenne szabad RAM meg "alatta" (ami azert allt elo, mert kozben felszabadult par szegmens, miutan osztott szegmens kiosztasra kerult). Na jo, nem hinnem, hogy ezek tul gyakori esetek lennenek azert.
« Last Edit: 2015.February.03. 15:39:28 by Zozosoft, Reason: idézet javítva »

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14732
  • Country: hu
    • http://enterprise.iko.hu/
Re: EXDOS
« Reply #269 on: 2015.February.03. 15:41:16 »
Bar gondolom EXOS reszerol az a legegyszerubb viselkedes, hogy ha EXOS boundary van, es beleutkozik, nem megy tovabb, hiaba lenne szabad RAM meg "alatta" (ami azert allt elo, mert kozben felszabadult par szegmens, miutan osztott szegmens kiosztasra kerult).
Így van. Viszont a felhasználói igényléssel lehet a lentiből kapni.