Welcome, Guest. Please login or register.


Author Topic: Sjasm fejlesztése (Read 9877 times)

Offline geco

  • EP addict
  • *
  • Posts: 7072
  • Country: hu
    • Támogató Támogató
Re: Sjasm fejlesztése
« Reply #30 on: 2019.April.08. 17:37:37 »
Lehet kérni egy kész EXE-t?
Ha még nincs meg :)

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #31 on: 2019.April.10. 13:18:30 »
Az előző hozzászólásban valójában már van .exe, és Linux verzió is. :) Nem tudom, talált-e valaki hibát. :oops:

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Sjasm fejlesztése
« Reply #32 on: 2019.April.10. 13:41:42 »
-E megadásnál lehet több is? Ha igen, akkor az mind külön -E, vagy egy felsorolás?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Sjasm fejlesztése
« Reply #33 on: 2019.April.10. 13:57:56 »
Az előző hozzászólásban valójában már van .exe
Ez lehetséges, hogy csak x64 verzió? :oops:

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #34 on: 2019.April.10. 14:09:31 »
-E megadásnál lehet több is? Ha igen, akkor az mind külön -E, vagy egy felsorolás?

Az -E és a -D többször is használható, például -Elabel1=123 -Elabel2=456, csak nem lehet újradefiniálni korábban már megadott azonosítót.

Ez lehetséges, hogy csak x64 verzió? :oops:

A .zip-ben és Geco hozzászólásában található .exe azonos és x64 verzió. De ha azt valaki nem tudja használni, akkor egyszerűen fordítható x86 is.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Sjasm fejlesztése
« Reply #35 on: 2019.April.10. 14:22:46 »
De ha azt valaki nem tudja használni, akkor egyszerűen fordítható x86 is.
Én kérnék egyet ide a munkahelyi gépre.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #36 on: 2019.April.10. 15:57:04 »
[ Guests cannot view attachments ]

A fordítása egyébként nagyon egyszerű, csak erre a csomagra van szükség (64 biteshez pedig erre), és mingw32-make parancsra.

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Sjasm fejlesztése
« Reply #37 on: 2019.April.10. 16:19:51 »
Köszi, működik!

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Sjasm fejlesztése
« Reply #38 on: 2019.April.11. 12:47:00 »
Még egy ötlet, amit hasznos lenne, ha meg lehet csinálni:
Olyan értékadás ami egy fájl méretét adná vissza. Ilyesmire gondolok:
prgsize   FSIZE game.prg

  LD DE,...
  LD BC,prgsize
  EXOS 6

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #39 on: 2019.April.11. 18:48:44 »
Egyelőre így oldottam meg, nem tudom, ez megfelelő-e:
Code: ZiLOG Z80 Assembler
  1.     fsize   "file.bin"          ; DW fileméret
  2.     fsize   "file.bin", prgsize ; prgsize EQU fileméret
  3.     fsize   "file.bin", bc      ; LD BC, fileméret (DE, HL, vagy SP is lehet)
Hiba esetén a címkés változat -1 értéket ad vissza, a többinél viszont fordítási hiba az eredmény. Talán célszerűbb lenne címkénél is az utóbbi módon kezelni a hibákat, de lehet, hogy hasznos funkció file létezésének a tesztelése?

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14710
  • Country: hu
    • http://enterprise.iko.hu/
Re: Sjasm fejlesztése
« Reply #40 on: 2019.April.11. 19:25:12 »
Egyelőre így oldottam meg, nem tudom, ez megfelelő-e:
Teljesen jó!

Quote
lehet, hogy hasznos funkció file létezésének a tesztelése?
Feltételes fordításhoz jó lehet, pl ha nincs betöltőkép, akkor annak töltését ne fordítsa be.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #41 on: 2019.April.11. 20:22:35 »
Az aktuális verzióból készítettem bináris csomagot, ami letölthető innen.

Offline geco

  • EP addict
  • *
  • Posts: 7072
  • Country: hu
    • Támogató Támogató
Re: Sjasm fejlesztése
« Reply #42 on: 2019.April.12. 08:31:01 »
Nem tudom mennyire lenne rá igény, én eddig 2x találkoztam vele, relokálható bináris fordítása, amikor a bináris végén helyezi el az összes címkét, és ha jól emlékszem az épp aktuális értékét, ami az áthelyezéshez szükséges, Symbos használ ilyet, és ha jól emlékszem a Winape tud ilyet.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #43 on: 2019.April.12. 14:59:58 »
Az FSIZE hibásan működött címke kimenetnél áthelyezhető modulban ("Duplicate label" hiba). :oops: Javítottam, de egyelőre csak a forráskódban. Kisebb újdonságként most már támogatja az IX és IY regisztereket is.

Nem tudom mennyire lenne rá igény, én eddig 2x találkoztam vele, relokálható bináris fordítása, amikor a bináris végén helyezi el az összes címkét, és ha jól emlékszem az épp aktuális értékét, ami az áthelyezéshez szükséges, Symbos használ ilyet, és ha jól emlékszem a Winape tud ilyet.

Az EXOS 2 vagy 7 modul egyszerűen konvertálható tetszőleges formátumra, bár ha jól látom, a WinAPE lehetővé teszi a normál és az áthelyezhető kód keverését egy file-on belül, ami problémásabbnak tűnik.

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Sjasm fejlesztése
« Reply #44 on: 2019.April.17. 16:38:59 »
As we're on the subject :mrgreen: ...what would be really nice :mrgreen:  ...is if ep128emu could read in a symbol table file from sjasm or M80, and then whenever the disassembler window prints an address, attempt to look up the address in the symbol table and print the symbol instead. It won't get it right all the time but it is very useful when it does! :twisted:

Printing symbol names is not implemented yet, but the Git version of ep128emu now supports breakpoint definitions in SjASM export file (.exp) format:
[ Guests cannot view attachments ]
A string in this format is basically just replaced with the lower 16 bits of the value, the first 4 characters (usually 0000) and the label name are ignored, but it may still be a convenient feature. Additionally, the breakpoint list can include comments, the rest of the line is ignored after a ; or # character.
« Last Edit: 2019.April.17. 17:00:00 by IstvanV »