Welcome, Guest. Please login or register.


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

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Assembly programozás
« Reply #210 on: 2010.November.30. 13:32:01 »
Kérdésem, ki mit használ eredeti gépen

EP-n a legjobb assembler a HEASS.

Quote
IstvanV írt valami PC-s assemblerrõl. Néztem a z80.info-t, fogalmam nincs melyik lenne jó...
Linux alatt meg fõleg nem tudom, létezik-e ilyen ami jó ebben a helyzetben.

Én az SjASM 0.39g6 verziót használom, ezzel fordítható az összes Z80 forráskód, amit kiadtam (kivéve néhány régi file-t). Biztosan van jobb is, de ezt mindenesetre használhatónak találtam. Megtalálható itt a fórumon is a letöltések között az EPvideoconv és az "EP utilities for Linux" csomagokban (az előbbiben Windowsra és Linuxra fordítva, az utóbbiban csak Linux verzió van), leírással (sjasm.txt) és forráskóddal együtt. A Linux verziót statikusra fordítottam, így elvileg minden disztribúción működik. Javítottam egy hibát is, ami Linuxon lefagyást okozott a MODULE..ENDMOD direktívák használatakor.
Az eredeti változat itt található, és van egy újabb 0.42beta8 verzió is, amely azonban nem teljesen kompatibilis a 0.39-el. Létezik még egy továbbfejlesztett és fejlesztés alatt álló SjASMPlus assembler is.
A használata egyszerű: parancssorban futtatható, és a fordítandó forrás file (ami egyszerű szöveges (.txt) formátumú file, az EP-s assemblerekkel ellentétben) nevét kell paraméterként megadni, illetve (opcionálisan) a kimeneti file-t. Ha ez nincs, és a forrásban nem található OUTPUT direktíva, akkor a kimeneti file neve a bemeneti file neve lesz a kiterjesztést ".out"-ra változtatva. A fordításkor létrehoz egy .lst kiterjesztésű lista file-t is, ami debuggoláshoz hasznos lehet.

Quote
Ebben a ep128emu2-ben lesz a jövõben vajon assembler?

Egyszerű assembler már most is van, amellyel közvetlenül a memóriába lehet utasításokat fordítani. Komolyabb funkciókat (címkék, makrók, stb.) nem tud, de nem is ez volt a célja.
« Last Edit: 2010.November.30. 13:39:27 by IstvanV »

Offline nt75sw

  • Beginner
  • *
  • Posts: 48
  • Country: hu
Re: Assembly programozás
« Reply #211 on: 2010.November.30. 14:16:35 »
Értem. De a Heass ha jól tudom, csak asm forráskódot tud betölteni (nincs "Read BIN File"), lefordított programot (*.com; *.ext) azt nem. Legalábbis én anno nem tudtam betölteni...

Pedig ez fontos lehet :)
Ha mégis tud akkor bocs, akkor kinyomozom miképp tud.
Ha nem, akkor melyik program a következõ javaslat a sorban?

Ui.: Közben nézem ezt a Heass-t, meglepõen gyors program, tetszik... De tényleg nem látom hogy lehetne bin-t etetni vele.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #212 on: 2010.November.30. 14:58:07 »
De tényleg nem látom hogy lehetne bin-t etetni vele.
És miért akarsz bin-t etetni vele? A Konvertálás/Adatfájl betöltése nem jó?

Offline nt75sw

  • Beginner
  • *
  • Posts: 48
  • Country: hu
Re: Assembly programozás
« Reply #213 on: 2010.November.30. 16:09:04 »
Nekem az a menüpont nem reagál semmire, sem emuban, sem EP-on...

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #214 on: 2010.November.30. 16:21:51 »
Nekem az a menüpont nem reagál semmire, sem emuban, sem EP-on...
Van megnyitott (vagy létrehozott) forrásfájlod a memóriában?

Offline Ferro73

  • EP lover
  • *
  • Posts: 960
  • Country: hu
Re: Assembly programozás
« Reply #215 on: 2010.November.30. 18:03:16 »
Én is probáltam a HEASS-t de nekemse sikerült .asm .txt fájlt csak a speciális .H?? engedte volna
jó lehet mert akár 64K assemblert is lelehet forditani ha van elég memoria.
Nekem az ASMEN jön be zxjátékot betöltöm keresek benn testelem a rutinokat editben megirom a változtatásokat EP re igy csak a változtatások kerülnek .asm a többi kod eredeti ZX.
vannak hátrányai az editor ugyan azt a memoriát használja mint ahová tölteném a játkot és a b3 szegmenst semhasználhatom keresztezni kellene a Dtest progival annak csak a kezelése körülményes.
Ezért én maradok az ASMEN-nél

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #216 on: 2010.December.01. 00:45:21 »
Én is probáltam a HEASS-t de nekemse sikerült .asm .txt fájlt csak a speciális .H?? engedte volna
Betöltésnél csak HEA. Minden egyebet Konvertálásnál, de ahhoz kell az, hogy legyen megnyitva a szerkesztõben egy HEASS dokumentum.

Offline nt75sw

  • Beginner
  • *
  • Posts: 48
  • Country: hu
Re: Assembly programozás
« Reply #217 on: 2010.December.01. 10:26:11 »
Betöltésnél csak HEA. Minden egyebet Konvertálásnál, de ahhoz kell az, hogy legyen megnyitva a szerkesztõben egy HEASS dokumentum.

Azzal meg az a baj, hogy elfagy... Illetve nem, csak ezek a csillagok villognak már 37 perce.
Namármost ha speed 400%-on ennyi idõ alatt nem tölti be...
(Emu-ban. Gépen még nem néztem, kínozza a gyerkõc.)


Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #218 on: 2010.December.01. 10:28:44 »
Hány 100 megás fájlt raktál be neki? :-)

Offline nt75sw

  • Beginner
  • *
  • Posts: 48
  • Country: hu
Re: Assembly programozás
« Reply #219 on: 2010.December.01. 10:32:58 »
Turbo Rudi (rudi.com 11K), de már rájöttem mi volt a baja...
Lassítva már kiírta hogy nincs szabad szegmens...
Asmon 1.3 (rom verzió) ramból ki, már megy.... Bocs :)

Alakul...

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #220 on: 2010.December.01. 10:37:36 »
Alakul...
Helyes :-)

Közben kipróbáltam, egy 32K-s fájlt, valódi floppyról, nem gyorsítva az emulátort 1:45 alatt rakott be.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #221 on: 2010.December.01. 10:38:39 »
És ott a konvertálásban az ASM betöltéssel lehet ASMON és FENAS formátumú forrás fájlt betölteni.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Assembly programozás
« Reply #222 on: 2010.December.01. 11:21:55 »
De a Heass ha jól tudom, csak asm forráskódot tud betölteni (nincs "Read BIN File"), lefordított programot (*.com; *.ext) azt nem.

Ha jól értem, valójában monitor funkció kellene, mint az ASMON-ban, és nem a .com vagy .ext file DB-kre konvertálása és forráskódba való beépítése :?:

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Assembly programozás
« Reply #223 on: 2011.October.04. 11:05:40 »
Nem a státusz sor palettaszínei miatt? (az a színpár, ami a kijelzõre van definiálva fekete)

Jó nyomon jársz!
Tehát a megfejtések:
Quote
- miért nem mûködik az áthelyezett status sorban a kijelzõ?
Azért mert a magnókezelõ közvetlenül az EXOS LPT elsõ sorába, azaz az eredeti status sor paletta színet piszkálva éri el a villogást. A saját LPT-nkben mutathat tetszõleges helyen a status sor videó memóriájára, a felíratok (SEARCHING, LOADING, stb) mûködni is fog, a töltésjelzõ téglalap is megjelenik, azonban nem fog villogni, mivel a magnó kezelõ nem a mi LPT-nkben, hanem az eredeti helyén váltogatja a színeket.
Ezt tapasztalhatjuk nagyon sok programban.

Quote
- hogyan lehet megoldani, hogy mûködjön?
Úgy, hogy az LPT táblánkat az EXOS LPT helyére tesszük, az eredeti status sort leíró blokkot megtartva, és beépítve a miénkbe.
Erre jöhet a kérdés, hogy akkor hogyan fog más helyre kerülni a képernyõn?
Nagyon egyszerûen: ki kell használni Nicknek azt a tulajdonságát, hogy az LPT táblának a vége nem kell, hogy egyben a kép vége is legyen. Magyarán lehet a kép közepén is az LPT vége, így akkor az LPT elején lévõ status sor a kép közepére kerül.
Egyetlen probléma, hogy az LPT táblának el kell férnie az EXOS LPT helyén, ezér csak "igazi EP-s" programokban lehet egyszerûen megoldani, Spectrum átiratoknál nem.
Viszont eszembe jutott, hogy hogyan lehet Spectrum átírat esetén is megoldani: a betöltõképet át kell konvertálni sorfolytonosra, ekkor már egy egyszerûsített LPT elfér az EXOS LPT helyén. Majd a betöltés végeztével kell átváltani a rendes Spectrum LPT-re.
Igény esetén megvalósíthatom pár korábbi átiratban :-)

Quote
- melyik programban mûködik?
Z&A Demo
Az ep128.hun igen szûkszavú a leírása, más apróbb trükkök se lettek észrevéve :-(

Offline Lacika

  • EP addict
  • *
  • Posts: 3189
  • Country: hu
    • http://www.ep128.hu
Re: Assembly programozás
« Reply #224 on: 2011.October.04. 13:24:03 »
Z&A Demo
Az ep128.hun igen szûkszavú a leírása, más apróbb trükkök se lettek észrevéve :-(

De ha leírod, mit kellene észrevenni egy laikusnak, szívesen kirakom!  :oops: