ENTERPRISE KLUB
2021. október 2., 1055 Budapest, Nyugati tér 9. 14-19 óráig
Belépés kizárólag klubtagok részére! (Klubkártyával vagy előfizetéssel!)
Welcome, Guest. Please login or register.


Author Topic: EXDOS (Read 93643 times)

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 87.0.4280.101 Chrome 87.0.4280.101
    • View Profile
Re: EXDOS
« Reply #315 on: 2020.December.29. 13:41:46 »
azert akad el a programod, mert az f meghajtorol szeretnel dirt, de a b erteke 5, es nincs ramdrive-od, belottem a ramdrive-ot, es tuljutott a call c010-en.

Offline Tomato77

  • EP user
  • *
  • Posts: 347
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 87.0.4280.88 Chrome 87.0.4280.88
    • View Profile
Re: EXDOS
« Reply #316 on: 2020.December.29. 15:09:57 »
Ez fura. Úgy próbáltam, hogy csináltam ramdrive-ot, meg még két másik meghajtót assign-nal a ramdrive-ra hivatkozva (F: és H:), hogy lehessen tesztelni több meghajtót is. Ezek létezését lekérdezi FISH 20-as hívással, ezt eddig jól működőnek véltem, de ránézek. Az E: és F: meghajtót kéne lekérdeznie egyelőre, de FISH 3-nál megakad. Akkor itt valójában várakozik a válaszra a hiba miatt, hogy nincs bent lemez?
Kotasoft

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 84.0 Firefox 84.0
    • View Profile
Re: EXDOS
« Reply #317 on: 2020.December.29. 19:58:25 »
Ha van RAM Drive-od, akkor nem kéne, nálam nem volt, akkor arra várt, amikor csináltam egyet, akkor tovább ment, csak az első lekérdezésig teszteltem.

Offline Tomato77

  • EP user
  • *
  • Posts: 347
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 87.0.4280.88 Chrome 87.0.4280.88
    • View Profile
Re: EXDOS
« Reply #318 on: 2020.December.29. 21:17:15 »
Nálam lefagy ramdrive-val és annyi tudásom nincs, hogy kinyomozzam az okát, a debug-ban látott infó kevés nekem. Azért köszönöm a nyomozást mindkettőtöknek! Elindulok az átirányított "dir" parancs felé, megnézem, mennyire lesz így használható sebességű. Viszont máris kérdésem lenne: Basic-ben kiadott EXT "xxx" parancsot hogyan lehet megvalósítani? Az EXOS leírásban a rendszerbővítők hívása részt olvasgatom. Találtam egy ilyet: 2-es akciókód: parancsfüzér. Itt a DE regiszterben kellene lennie egy címnek, ami a parancsra mutat, aztán... hogyan? Itt kéne egy EXOS 11-es funkciót hívni? Jó lenne, ha mármilyen EXDOS parancsra működne, mert akkor a "dir" mellett a többi funkciót is (pl. "cd", "copy") így oldanám meg.
Kotasoft

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 87.0.4280.101 Chrome 87.0.4280.101
    • View Profile
Re: EXDOS
« Reply #319 on: 2020.December.29. 21:57:20 »
valodi gepen probalod, vagy emulatoron? mert ha emu, akkor megnezhetjuk az altalad hasznalt konfiggal is.
ugy emlexem exos 26-os hivassal lehet.
  ld de,dir
  exos 26

dir db 3,"DIR"

Offline Tomato77

  • EP user
  • *
  • Posts: 347
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 87.0.4280.88 Chrome 87.0.4280.88
    • View Profile
Re: EXDOS
« Reply #320 on: 2020.December.29. 23:30:32 »
Emulátorral próbáltam, a "EP_128k_EXDOS_FileIO.cfg" konfig volt betöltve, hogy legyen EXDOS és a fordított .COM programot is be tudja tölteni vinyóról.
Kotasoft

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 87.0.4280.101 Chrome 87.0.4280.101
    • View Profile
Re: EXDOS
« Reply #321 on: 2020.December.29. 23:40:35 »
ugyanezt hasznaltam en is :-D, es egy ures 32K-s ramdisket hoztam letre, es addig neztem, mig a 0c010h-bol vissza nem ter. mekkora ramdisket hoztal letre?

Offline Tomato77

  • EP user
  • *
  • Posts: 347
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 87.0.4280.88 Chrome 87.0.4280.88
    • View Profile
Re: EXDOS
« Reply #322 on: 2020.December.29. 23:45:23 »
16K-s ramdisk-et csináltam, de most kipróbáltam 32K-ssal, assign nélkül, csak E: meghajtó van és ugyanúgy lefagy.
Kotasoft

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 87.0.4280.101 Chrome 87.0.4280.101
    • View Profile
Re: EXDOS
« Reply #323 on: 2020.December.30. 10:00:10 »
a program valojaban nem fagy, az lpt kezdocimet allitja at az fd szegmens legelejere az fc szegmens elejerol, ahol nincs lpt, ezert van a fekete kepernyo villanasokkal, ha kitartoan nyomsz egy gombot, akkor klikk is van.

Offline Tomato77

  • EP user
  • *
  • Posts: 347
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 87.0.4280.88 Chrome 87.0.4280.88
    • View Profile
Re: EXDOS
« Reply #324 on: 2020.December.31. 01:49:57 »
Jé, tényleg van klikk! Azért reagál ilyen nehezen a billentyűleütésre, mert leköti a Nick-et a hibás LPT? Egyébként nem értem, mitől változik meg az LPT kezdőcím. A 82h és 83h porton keresztül változtatható, amit a program csak egyszer változtat (+1 a kilépésnél). Hibásan lennének a szegmensek belapozva és emiatt a C010h hívás felborít mindent? Vagy valahol felülírható a memóriában és felül is íródik?

Megnéztem emulátorban, mi látszik a Nick-en. Nincs call C010h, van kép:

Nick  80: 00 00 00 C0  Slot: 37
Nick  LPB: 01B0,FE  LD1: 0000  LD2: 0007

Van call C010h, nincs kép:

Nick  80: 00 00 00 C0  Slot: 2D
Nick  LPB: 4A80,BE  LD1: 0000  LD2: 0000

Ebből mondjuk nem látom*, hogy melyik jelenti az FC szegmenst, de az LPB-nél elég nagy eltérés van. Azt most fedeztem fel, hogy működik a debug és alul a Step gombbal tudom parancsonként léptetni a programot. 1024x768-as felbontásnál nem látszódtak a gombok, kilógott a debug képernyő alja. :) Tényleg fut a program, de nagyon nehéz felismerni assembly-ben a neki megfelelő C kódot.

* Módosítás: ha rátehénkedek a Step gombra, akkor folyamatosan változnak a fenti értékek a Nick-nél. Ha jól gondolom, az LPB-ben az éppen megjelenített sorparaméter blokk van, és a 0-val kezdődő cím van az FC lapon, a 4-essel kezdődő pedig az FD-n. Valamiért ez tényleg rossz és az FD-n keresi az LPT-t, ha van call C010h.
« Last Edit: 2020.December.31. 02:12:21 by Tomato77 »
Kotasoft

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 87.0.4280.101 Chrome 87.0.4280.101
    • View Profile
Re: EXDOS
« Reply #325 on: 2020.December.31. 09:27:20 »
nem a c010h hivasa boritja fel az lpt-t joval a 3. hivas utan jon az lpt allitas, belapozza a page2-re FD-t, es atallitja C4-re a 83-as portot, ez pozicionalja rossz helyre az LPT-t, es maga a C program. Igen, ezert nem szeretem en se a C programokat, vagy egyeb mas nyelven irt programokat debuggolni, mert nehez rajonni epp hol is jar, mit csinal. A klikk azert olyan lassu, mert az "LPT" jelen esetben egy tobb ezer soros kepet definial, egeszen addig tart, amig eljut a megfelelo pozicioban egy olyan byte-ig, amiben a reload bit be van allitva. Azt nezd meg, hogy a C forrasodban allitod-e direektben a 82-83 portokat, ha nem, akkor melyik fuggveny teszi ezt a meghivottak kozul.

Offline Povi

  • EP addict
  • *
  • Posts: 2094
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 88.0.4324.182 Chrome 88.0.4324.182
    • View Profile
    • http://povi.fw.hu
Re: EXDOS
« Reply #326 on: 2021.February.22. 19:03:07 »
Így kérdezed le:
Code: [Select]
               LD DE,EXDOS_STR
                EXOS 26
JP NZ,NOEXDOS
                DI
                LD (FISH_VAR),DE
                PUSH DE
                POP IY
                LD A,(IY-5EH)
                LD (EXDOS_ROM),A


EXDOS_STR       DB 6,"EXDOS",0FDH

Amikor meg hívod, akkor:
Code: [Select]
               LD IY,(FISH_VAR)
                LD A,(EXDOS_ROM)
                OUT (0B3H),A
                LD A,0FFH
                OUT (0B2H),A

elkezdtem nézegetni az exdos leírásában a fish hívásokat, kicsit zavaros...
hogyan lehetne pl. egy DIR parancsot megírni? milyen fish hívások kellenek hozzá, milyen sorrendben?
én pl. az 1-es hívás leírását nem tudtam értelmezni... és gondolom, az azért kellhet hozzá...
*** Speicherplatz zu klein

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 85.0 Firefox 85.0
    • View Profile
Re: EXDOS
« Reply #327 on: 2021.February.22. 20:49:50 »
elkezdtem nézegetni az exdos leírásában a fish hívásokat, kicsit zavaros...
hogyan lehetne pl. egy DIR parancsot megírni? milyen fish hívások kellenek hozzá, milyen sorrendben?
én pl. az 1-es hívás leírását nem tudtam értelmezni... és gondolom, az azért kellhet hozzá...
Még nem foglalkoztam vele, de mintha lenne egy fish hívás erre a célra, mert az a tippem, hogy a dir parancs vége is így csinálja.
A Directory kérésben csíteltem, a FILE-t vettem alapul, és most megnézni se tudom, mert a céges gépen megy az FT pofozgatása.
Na, egy régi verzió van ezen a gépen is:
Fish 01 útvonal és KFCB készítése fájl névből (ez csak indulásnál hajtódik végre, hogy megtudjuk melyik könyvtár az aktuális)
Fish 02 aktuális katalógus megadása
Fish 04 első bejegyzés keresése
Fish 05 következő bejegyzés keresése addig, amíg 0-ás a futás

Az a tippem, hogy a Fish 21 fog lemez infót visszaadni.

Offline Povi

  • EP addict
  • *
  • Posts: 2094
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Chrome 88.0.4324.182 Chrome 88.0.4324.182
    • View Profile
    • http://povi.fw.hu
Re: EXDOS
« Reply #328 on: 2021.February.22. 21:00:52 »
Még nem foglalkoztam vele, de mintha lenne egy fish hívás erre a célra, mert az a tippem, hogy a dir parancs vége is így csinálja.
A Directory kérésben csíteltem, a FILE-t vettem alapul, és most megnézni se tudom, mert a céges gépen megy az FT pofozgatása.
Na, egy régi verzió van ezen a gépen is:
Fish 01 útvonal és KFCB készítése fájl névből (ez csak indulásnál hajtódik végre, hogy megtudjuk melyik könyvtár az aktuális)
Fish 02 aktuális katalógus megadása
Fish 04 első bejegyzés keresése
Fish 05 következő bejegyzés keresése addig, amíg 0-ás a futás

Az a tippem, hogy a Fish 21 fog lemez infót visszaadni.

én az 1-es hívásnál elakadtam...
nem világos, h mit kell megadni a HL-ben és a DE-ben...
meg kicsit hülyén van tördelve itt a leírás: http://www.ep128.hu/Ep_Konyv/Exdos_Muszaki_Leiras.htm#11
és nem világos, hogy mi az input, és mi az output

a :file bővítőnek fönt van valahol a forrása egyébként? abból is tudnék tanulni
*** Speicherplatz zu klein

Offline geco

  • EP addict
  • *
  • Posts: 6288
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 85.0 Firefox 85.0
    • View Profile
Re: EXDOS
« Reply #329 on: 2021.February.22. 21:26:43 »
Ezt a topicot nézd meg:
https://enterpriseforever.com/programozas/file-bovites/

Biztos fent van, mert én is forrásból kezdtem el.
Nálam a Fish 1-es hívásnál csak a
DE KFCB, első hívásnál ez egy üres bájtot tartalmaz
HL útvonal\file, első hívás úgyszint üres bájt

eredmény:
HL útvonal
IX KFCB kitöltve

Ha nem találod a file source-ot, írj egy pm-et, és holnap felteszem az FT forrást