Welcome, Guest. Please login or register.


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

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #435 on: 2013.April.14. 16:28:59 »
Amit értenék akkor (hogy hasznos), ha nem nézegetné a címet ... de nézegeti ... ha már nézegeti, nem toknyóc neki, hogy fix címet hív, vagy azt amit az imént nézegetett meg, hogy nem zéró ?
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #436 on: 2013.April.14. 16:49:25 »
Nem fix címet hogyan hívnál meg ROM programból?

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #437 on: 2013.April.14. 16:54:07 »
Hát mittudomén ... pont úgy, ahogy ellenőrizném, hogy zéró- e ... aztán meg push visszatérési cím, és jp (hl), amiben a már ellenőrzött nem zéró cím van ... nem ?
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #438 on: 2013.April.14. 16:56:36 »
Regiszterekben a visszaállított eredeti értékek vannak.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #439 on: 2013.April.14. 17:05:19 »
Mit kezdjek én azokkal ?

Fut a programom, teljesen mindegy, hogy belehívtam -e exos -ba, vagy nem, es hogy hol következett be a szoftver megszakítás, oké hogy mikor meghívódott az alkalmazói program szoftver megszakításkezelője (3ch) akkor a lapok, ilyesmi magasabb szintű kontextusok helyre vannak állítva ... de mit kezdjek én a megszakításlezelőben a főprogram regisztereivel ?

Tök felesleges ... nem ?
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #440 on: 2013.April.14. 17:09:30 »
Semmit, neked csak meg őrizni őket.
De a te rutinodból a megszakított programba tér már vissza a vezérlés.
Ahhoz, hogy te meg tud őrizni, az EXOS-nak helyre kell állítani azokat, mielőtt továbbadja a vezérlést.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #441 on: 2013.April.14. 17:12:53 »
Quote
De a te rutinodból a megszakított programba tér már vissza a vezérlés.
Ááááááá, mindíg van valami amit zsigerből másképp gondolnék ...

Miért ? Miért nem hív meg engem, aztán ha visszatértem, korrekt módon visszaadja a főprogramnak a kontrollt ?
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #442 on: 2013.April.14. 17:28:39 »
Quote from: Z80System
Miért ? Miért nem hív meg engem, aztán ha visszatértem, korrekt módon visszaadja a főprogramnak a kontrollt ?
Ez korlátozná a lehetőségeket, nem lehetne a főprogram regisztereit piszkálni.
Pl láttam már olyat játékban, hogy a billentyű lekérdezés a megszakításban ment, és az eredményt az A' regiszterbe tette.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #443 on: 2013.April.14. 17:41:42 »
Na jó, csináljunk úgy, mintha túltettem volna magam a megrázkódtatásokon, es foglaljuk össze:

- a 38h hardver megszak cím, z80 hívja, nem lehet kinullázva, melyre alapból rá van ülve az exos, amíg az ember ki nem cseréli saját kezelőre. ha lecseréljuk, akkor azt csinálunk amit akarunk, akár még az exos -t ( az eredeti megszakításkezelőt ) is hívhatjuk belőle, ha ügyesek vagyunk, de ha nem cseréljük le, akkor is van lehetőségünk kezelni a megszakításokat a 0BFED/Eh által, viszont INNEN VISSZATÉR a megszakításkezelőnk az exos megszakításkezelőjébe mielőtt visszatérne az exos megszakításkezelője a főprogramba.

- a 3ch pedig szoftver megszak esetén van hívva, az exos által, éppúgy ki lehet nullázva mint a 0BFED/Eh, és ebből már a főprogramba tér vissza a vezérlés, nem az exos szoftver megszakkezelőjébe.

Igy van ?
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #444 on: 2013.April.14. 17:54:52 »
Igen.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #445 on: 2013.April.14. 18:01:18 »
Namost akkor a 0BFED/Eh -által nyújtott módszerrel vagy nem lehet kommunikalni a főprogrammal regisztereken keresztül, vagy pedig lehet, mert megoldja az exos, de akkor a szoftver megszak esetén éppúgy meg tudná oldani ... nem ?

Az első esetben: ott miért nem lehet ? Miért nem volt fontos, hogy itt is lehessen ?
A második esetben: akkor miér nem oldották meg ott is ugyanúgy mint az elsőben, minek kell a direkt főprogramba visszatérés ?
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #446 on: 2013.April.14. 18:12:31 »
Az USR_ISR-nél az volt a szempont, hogy minél előbb kapja meg a vezérlést, így még a perifériakezelők meghívása előtt van meghívva.

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #447 on: 2013.April.14. 18:16:11 »
Hááát... imígyen elülső hallásra elég nagy kattyvassz ez néköm ...
Z80 System

Online Zozosoft

  • EP addict
  • *
  • Posts: 13531
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 20.0 Firefox 20.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #448 on: 2013.April.14. 18:19:59 »
Quote from: Z80System
Hááát... imígyen elülső hallásra elég nagy kattyvassz ez néköm ...
Játék/demóban úgyis teszel egy JP-t 38h-ra, és kész :-D

Offline Z80System

  • EP addict
  • *
  • Posts: 3926
  • Country: hu
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 26.0.1410.64 Chrome 26.0.1410.64
    • View Profile
Re: Assembly programozás
« Reply #449 on: 2013.April.14. 18:27:10 »
Ez így van, valóban, de egyrészt régen is az volt a hiba, hogy csak a legalapvetőbb dolgokat tanultam meg ahhoz, hogy aztan hardverből hajtsam a gépet, így hulye maradtam minden rendszerhez kapcsolodó dologhoz, másrészt bár most valóban játék demókat fogok csinálni, de (ha előbb meg nem halok) akkor szándékozok pár rendszerhez illeszkedő dolgot is csinálni, pld. az a betöltő dolog nagyon izgat továbbra is, lévén két program betöltése között marha sok idő elmegy mire megint ugyanoda navigálom vissza magam a rendszer ujraindulása után, de még az előtt egy olyan file managert is terveznék, amelyik program indítás előtt elmenti a helyét, és rendszer indítás után villámgyorsan ujraindul visszatöltve az állapotát, így lehetőséget adva a böngészés folytatására.

Szal szeretném megtanulni mi ez a vas és os, miközben itt demózgatok, hogy aztán majd már azokat is meg tudjam csinálni.
Z80 System