Welcome, Guest. Please login or register.


Author Topic: Assembly programozás (Read 254597 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #285 on: 2012.March.18. 21:17:49 »
A kurzor F1 -re alakitasa a konfigokban huzalozott ? tehat melyik bovito csinalja, es lehet-e opcionalis, vagy ha az a bovito benn van, akkor cursor = F1 ?
EPDOS HFONT-ja csinálja.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1448
  • Country: hu
Re: Assembly programozás
« Reply #286 on: 2012.March.18. 21:46:59 »
Z80 System!

 Amit te akarsz csinálni, az már kicsit a multitaszkos operációs rendszer felé hajlik. Multitaszkos operációs rendszer esetén van az, hogy az aktuális rendszert megszakítja egy idôzítô, eltárolja a következô utasítás címét, a verem tartalmát és a regisztereket. Ezután kialakítja az új környezetet a korábbi (vagy újonnan induló) másik programnak, betölti a verem/regiszter/utasítást, majd megy a másik program.
 Ehhez az x86-os rendszereknél a processzornak vannak speciális utasításai, amely gyorsítja a folyamatot.

 Nem muszáj, hogy egyszerre több szál fusson, de a vezérlésátadás nagyon jól ki van dolgozva.

 Enterprise 128 esetén talán az a baj, hogy kevés a memória ehhez. Fôleg, hogy az EXOS-t ep64-hez fejlesztették. Ahhoz, hogy vissza tudjon térni az elôzô programhoz mind kettônek el kell férnie a memóriában. 1MByte vagy nagyobb bôvítés esetén már érdemes lenne írni új EXOS-t.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #287 on: 2012.March.18. 21:48:45 »
Sot azon gpndolkodok, hogy meg lehetne azt csinalni, hogy a :run rendszerbovito mar elmenti az exos parametereit elore az alkalmazas betoltese utan, de meg mielott lefuttatna az alkalmazast,
es lehetne mondjuk egy olyan effektet berakni hogy a mindenkori aktualis exos kep feketebe lesotetul, szepen, fade effekttel, aztan lefutna az alkalmazas, es mikor visszaadja az alkalmazas a betoltonek a vezerlest,
akkor a betolto lesz az, aki szepen mindent visszapakol az exosnak ( lapok, megszakitas, lpt, stb. ) es persze elotte felfade- eli a kepet feketebol az exosnak.

Vagyis mivel a nagyja exos elmentest/visszatoltest ( plusz egy jo kis latvanyos exos kepernyo fade- elest ) ezzel a betoltobe raktunk, ezert a futtatando alkalmazasoktol elvart kovetelmeny a kovetkezo egyszeru pontokkal hatarozhato meg:

- fuss ugy, hogy csak exostol igenyelt memoriat mocskolj ossze ( ha neked pont olyan szegmens kell ami mar le van foglalva es nem szabad, akkor mentsd el/vissza oket exostol igenylet szabad szegmensekre )
- mielott visszatersz ret- tel a betoltohoz, a betolto program kod szegmenset tedd vissza a lapjara ( azert igy fogalmazok, mert meg nem tudom hogy melyik lapon is lesz a betolto kodja, ami ugye egy rendszerbovito)

es ennyi. ha egy alkalmazas ezt a 2 egyszeru feltetelt teljesiteni tudja, az futtathato lesz a :run kommandunkkal. raadasull ha valaki ir at/meg egy alakalmazast amit ilyen :run- nal is futtathatonak szeretne, akkor ugye lesz egy exos valtozoja ahhoz, hogy tudja, hogy ot most milyen modon szeretnek futtatni, es futhat ezert ugy, hogy teljesiti a fenti 2 feltetelt, meg ugy is hogy nem erdekli az egesz, es mindent felulir. ez esetben azt lenne ildomos megcsinali, hogy mondjuk olyankor nem is figyeli majd az esc- t igy nem elszallni fog az esc- re, hanem csak nem lep ki.

Jol gondolom azt a 2 pontos feltetelt, Zozo ?

« Last Edit: 2012.March.18. 21:53:02 by Z80System »
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #288 on: 2012.March.18. 21:53:02 »
Jol gondolom azt a 2 pontos feltetelt, Zozo ?
Jól.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #289 on: 2012.March.18. 22:03:12 »
Olyat lehetne még csinálni, hogy az 5-ös fejléc nem használt bájtjait felhasználni, pl. mondjuk eltárolni egy indítási címet, ami ha 0, akkor tudhatja a RUN, hogy ez egy hagyományos 5-ös program, nem lesz kilépés, felesleges erõlködni. Ha pedig nem 0, akkor ezt a pontot hívja meg, nem a 100h-t, így a programokban egyszerûbben lenne megoldani a "hogyan lettem indítva" kérdést, 100h-n indulva hagyományos mûködés, és a végén kilépés az EXOS logóhoz ugrás módon, az új címen indítva pedig kell lapozás, SP mentés, végén pedig kilépés ezek visszaállításával, majd visszatéréssel.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #290 on: 2012.March.18. 22:06:46 »
Tuby128 :

pontosan nem ertem mit akarsz mondani, de nem hinnem hogy az en "vagyaimat" kellene valami jozan megfontolasok koze szoritani ...

egy ep konfig manapsag emulatoros, tetszoleges meretu ram van benne.

es hat vannak memoriabovitos konfigok, aki akarja meg tusja boviteni,
de egyebkent meg siman is sztm jonak kell lennie elvileg sok programnal,
de az mindegy is mert ugysem fogja ehhez atirni oket senki.
max lesz ajd 1-2 es kesz.

viszont a lenyeg az, hogy ha en ep- vel barhol vagyok, pld. basic/epdos/asmon/wp/exdos/heass vagy akarmi, amelyik tud rendszerbovito kommandokat kiadni, akkor az iment emlitett programok minden modositasa nelkul fogom tudni elinditani a demoimat, vagy a korabban emlitett tetrist. tehat mondjuk heassolok, vagy basicelek, es kejes orommel fogom beirni hogy :run eptris.com , ami elindit egy fullextras szines/szagos/digihangos/frames/teljeskepernyos tetrist mint ami amigakon volt, es ha jatszottam vele egyet, akkor nyomok egy esc- et, es irom a kovetkezo heass vagy basic sort... :)

persze mindezt lehetne siman is ugy, hogy azoknak a programoknak, amikek igy akarnek hasznalni, annak keszitenek egy rendszerbovito verziot, es kesz.
ami mar benne van az exosban.
de akkor azoknak a memoriaban kene maradni, vagy zozotools- al kihekkelni.
ez mennyivel jobb mar, hogy betoltodik, lefut, kilep... kvazi barhonnan... mint a nagyok ... :)
« Last Edit: 2012.March.18. 22:11:21 by Z80System »
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #291 on: 2012.March.18. 22:24:45 »
Quote
Olyat lehetne még csinálni, hogy az 5-ös fejléc nem használt bájtjait felhasználni, pl. mondjuk eltárolni egy indítási címet, ami ha 0, akkor tudhatja a RUN, hogy ez egy hagyományos 5-ös program, nem lesz kilépés, felesleges erõlködni. Ha pedig nem 0, akkor ezt a pontot hívja meg, nem a 100h-t, így a programokban egyszerûbben lenne megoldani a "hogyan lettem indítva" kérdést, 100h-n indulva hagyományos mûködés, és a végén kilépés az EXOS logóhoz ugrás módon, az új címen indítva pedig kell lapozás, SP mentés, végén pedig kilépés ezek visszaállításával, majd visszatéréssel.


Aham, ezek tetszenenek, kicsit aggodtam, hogy lehet- e majd kerdezni arra hogy letezik- e X exos valtozo, vagy hogy hogy lesz ez, de ha vannak ilyen nem hasznalt byte- ok, akkor szuper lenne.

Ehhez a fejlec manipulaciohoz vannak toolok, konnyeden megy ? En utoljara asmonnal csinaltattam ilyen fejleceket a file- ok ele, tinektek ez a fejlec manipulalgatas mar megy konnyen ? Vagy ezt valahogy ugy kepzeljem el, hogy lefordittatom majd az 5- os fejlecu vackomat az asmonnal, vagy akarmivel, es akkor egy hex editorban meg atirom az elejeben a byte- okat, es kesz ?

Mer ha igy lenne az kiraly...


Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #292 on: 2012.March.18. 22:29:51 »
Legegyszerûbb, ha fejléc nélküliként fordítod, DB-ben adva meg a fejlécet
DB 0,5
DW programvege-100h
DW runcim
DB 0,0,0,0,0,0,0,0,0,0

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #293 on: 2012.March.18. 22:31:05 »
Quote
EXOS logóhoz

Gondolom ENTERPRISE logo, igaz ? :)

Ja es vegulis az is jo otlet hogy ha a program ( fejlece ) mar tartalmazna a kileptetes modjat, akkor ha a program eredeti program, ami osszebarmolja az exost, akkor nem kell a le/fel fade effekt sem,
ilyenkor a :run egybol hivhatna az exos  load_modul -t, es csak egy wrapper lenne felette, ugyanaz lenne az eredmeny mintha :load -ot hivtunk volna,

viszont ha be van allitva akkor ugy mukodne mint korabban leirtam.
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #294 on: 2012.March.18. 22:35:39 »
Kerdes hogy az exos nem sipol- e be, ha nem nullakat teszunk a fejlecbe oda ...
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #295 on: 2012.March.18. 22:41:07 »
Kerdes hogy az exos nem sipol- e be, ha nem nullakat teszunk a fejlecbe oda ...
Kipróbáltam, nem.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #296 on: 2012.March.18. 22:47:32 »
hat akkor szupi, ezexerint mar "csak" ezt a rendszerbovitot kene megirni, es mar mehet is a :run -t kiszolgalni kepes 5- os fejlecu programok irasa.

namost lattam en hogy van valami "relokalhato rendszerbovito" tipus, ami arrol szol, hogy nem foglal le egy egesz szegmenst, es gondolom ennek a :run vagy meginkabb :call rendszerbovitonek ( nem tok donteni az egyik jobban kezreall a masik kifejezobb technikailag ) ilyen relokalhatonak kene lennie,
mert meretben ugye nagyon kicsi lesz, nem kene egy egesz szegmenst lefoglaljon... igaz ?

es ha igaz, akkor ilyet tudnak forditani az ep-s eszkozok ? neztem azt a relokalhato formatumot, hat nem mondanam hogy megertettem egybol... szoval ez a relokalhato rendszerbovito dolog tamogatott az asmon/heass satobbi ep- s forditok altal ? ezeket ti rendszeresen alkalmazzatok ? tehat egy kiprobalt mukodo dolog ?
Z80 System

Offline endi

  • EP addict
  • *
  • Posts: 7298
  • Country: hu
  • grafikus, játékfejlesztõ, programozás, scifi, tudományok, vallás
    • Honlapom
Re: Assembly programozás
« Reply #297 on: 2012.March.18. 22:47:54 »
én elég sok programom fejlécébe, oda a nullák helyére beírtam hogy ORKSOFT :)
Vigyázat! Szektás vagyok! :)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #298 on: 2012.March.18. 22:54:40 »
Kicsit macerásan, de lehet az ASMON-nal relokálhatót, írtam errõl anno az Enterpressben. Meg talán még a GEN tud ilyet, de azt sose használtam  :oops:

Mondjuk ha elkészül, és jól mûködik, akkor ROM formában lesz a leghasználhatóbb, ha nem túl nagy, akkor esetleg hozzácsapva valamihez.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Assembly programozás
« Reply #299 on: 2012.March.18. 23:01:13 »
aham... tehat akkor ne is pocsoljek olyasmivel mint a relokalhato rendszerbovito ( es az ahhoz szukseges relokalhato modul bitfolyama ), mert nem igazan hasznaljatok ti sem, hanem legyen mukodo eloszor egy sima abszolut ( vagy hogy is neveztek ) rendszerbovitokent, es majd akkor hozza lesz teve valami nagyobbhoz ?

meretben mit ertesz az alatt hogy "nem tul nagy" ? hat amire en gondolok az par bajt lenne csak, nem ? elmenteni par dolgot/visszamenteni par dolgot, meg az aktualis exos lpt- ben allitani a paletta szineket... gondolom ez majd jo kicsi lesz, nem ?

es egyebkent ha majd ossze kell fuzni valamivel, az majd binarisban lesz csinalva ? tehat mindegy mivel csinalnam ? vagy forras szinten lenne osszefizve ?


Z80 System