Welcome, Guest. Please login or register.


Author Topic: Rotate Second Reality (Read 3102 times)

Offline petyo71

  • Beginner
  • *
  • Posts: 34
  • Country: hu
    • Támogató Támogató
Re: Rotate Second Reality
« Reply #15 on: 2024.January.10. 20:35:05 »
A leggyorsabb verzióban van egy kis hiba a belső ciklusban a csökkentés/növelés rossz helyre került, ezt javítottam, az új csatolmány már a javított verziót tartalmazza.

Gratula, jó lett!

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9952
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Rotate Second Reality
« Reply #16 on: 2024.January.10. 20:59:06 »
Ki az a Rex? A felügyelőt ismerem :lol:
[ Guests cannot view attachments ]
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline geco

  • EP addict
  • *
  • Posts: 7121
  • Country: hu
    • Támogató Támogató
Re: Rotate Second Reality
« Reply #17 on: 2024.January.10. 20:59:55 »

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14739
  • Country: hu
    • http://enterprise.iko.hu/
Re: Rotate Second Reality
« Reply #18 on: 2024.January.10. 21:35:45 »
Az csinálta nekem a forrást a binárisból.
Na és azt hogyan?

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1299
  • Country: hu
  • Stray cat from Commodore alley
Re: Rotate Second Reality
« Reply #19 on: 2024.January.11. 07:08:50 »
Na és azt hogyan?
Írt REXX-ben egy Z80 disassemblert? Talán.

Offline geco

  • EP addict
  • *
  • Posts: 7121
  • Country: hu
    • Támogató Támogató
Re: Rotate Second Reality
« Reply #20 on: 2024.January.11. 08:24:57 »
Írt REXX-ben egy Z80 disassemblert? Talán.
Igen, kiegészítve azzal, hogy a kódon "futás" közben generálja a forrást.

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1299
  • Country: hu
  • Stray cat from Commodore alley
Re: Rotate Second Reality
« Reply #21 on: 2024.January.11. 11:19:28 »
Igen, kiegészítve azzal, hogy a kódon "futás" közben generálja a forrást.
Hohó! :shock: Az emulátor rész mennyire teljes? Csak Z80-at emulál, vagy hardvert operációs rendszerrel, memória menedzsmenttel és megszakításokkal is?

Offline geco

  • EP addict
  • *
  • Posts: 7121
  • Country: hu
    • Támogató Támogató
Re: Rotate Second Reality
« Reply #22 on: 2024.January.11. 11:28:35 »
Hohó! :shock: Az emulátor rész mennyire teljes? Csak Z80-at emulál, vagy hardvert operációs rendszerrel, memória menedzsmenttel és megszakításokkal is?
Áááá, sokkal egyszerűbb, halad a kódon, először feloldja az adott pozícióban az utasítást, utána ha JP/JR/CALL volt, akkor elugrik arra a címre, RET esetén meg vissza a visszatérési címre, feltételes JR/JP-nél is elugrik az adott címre, és megjegyzi a visszatérési értéket is, hogy arra is járjon, regiszterekkel, és egyéb utasításokkal nem foglalkozik, így a JP (HL)-lel se tud mit kezdeni, a lényeg az, hogy bejárja az egész utat, ami egy adott indulási ponttól elérhető, természetesen mindent nem talál meg, ezért megadható extra induló cím.
Természetesen a kimenettel lesz még ténykednivaló, de nagyságrendekkel kevesebb, mintha egy disassemblált kódból probálnék forrást készíteni, és nekem kényelmesebb, és gyorsabb is, mint mint a visszafejtő programok használata.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9952
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Rotate Second Reality
« Reply #23 on: 2024.January.11. 13:51:01 »
Áááá
Akkor ez majnem olyan, mint a Spectrum basic converter, csak nem Spectrumról konvertál?
Valamelyik Enterpressben volt már amúgy szó erről, a Commodore programok átírása kapcsán, mint pl. Rescue from Zylon.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1299
  • Country: hu
  • Stray cat from Commodore alley
Re: Rotate Second Reality
« Reply #24 on: 2024.January.11. 16:14:56 »
Akkor ez majnem olyan, mint a Spectrum basic converter, csak nem Spectrumról konvertál?
Valamelyik Enterpressben volt már amúgy szó erről, a Commodore programok átírása kapcsán, mint pl. Rescue from Zylon.
Nem. Ez Z80-as gépi kódú programokat elemez, végigköveti a vezérlésátadásait és assembly forráskódot állít elő belőle. geco minden bizonnyal ezt használja a ZX Spectrum és Amstrad CPC programok átírásánál. A Commodore programokhoz emlékeim szerint egy másik ilyesféle eszközt készített és használ, ami 6502-es gépi kódot dolgoz fel hasonló módon és generál belőle Z80 assembly forrást.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1449
  • Country: hu
Re: Rotate Second Reality
« Reply #25 on: 2024.January.12. 10:29:15 »
Honnan lehet letölteni ezt a progamot?

Offline geco

  • EP addict
  • *
  • Posts: 7121
  • Country: hu
    • Támogató Támogató
Re: Rotate Second Reality
« Reply #26 on: 2024.January.12. 10:55:11 »
Honnan lehet letölteni ezt a progamot?
Legfőképp sehonnan :D
Itt ficeg a vinyómon, de ehhez fel kell tenni egy REXX interpretert a gépedre, és nem az a user friendly fajta, a kódban kell megadni pár dolgot.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1449
  • Country: hu
Re: Rotate Second Reality
« Reply #27 on: 2024.January.12. 11:21:02 »
Már gondolkoztam, hogy írni kellene egy ilyen programot Windowsra, ami szépen elnevez minden ugrást. Mint a legtöbb reverse engineering program windowsra. Aztán az ember átnevezi az ugrás cimkéket, ha felismerte, és akkor a program is mindenütt átírja.
 Egy dolgot nagyon nehéz kezelni, ha a gépi kód átírja saját magát. Erre egy példa:

cimke-01: LD HL, 01532h  (ez egy többször felhasználható rutin aminek a paraméterét itt adjuk meg)
...
RET
...
LD HL, 02340h
LD (cimke-01),HL
CALL cimke-01

Ez a x86-os világban tiltott dolog. A Z80-nál pedig előszeretettel használják.

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1299
  • Country: hu
  • Stray cat from Commodore alley
Re: Rotate Second Reality
« Reply #28 on: 2024.January.12. 13:47:52 »
Ez a x86-os világban tiltott dolog. A Z80-nál pedig előszeretettel használják.
Nem lenne pontosabb azt állítani, hogy azokon a Neumann processzor architektúrákon, ahol (utasítás)gyorsítótárazás történik általában* nem támogatott**, máshol általában igen?

* Érdekes módon az Apollo CPU-nál (a 68060 FPGA továbbfejlesztése lelkes amatőrök által) ezt emlékeim szerint megoldották. A mikrovezérlőknél, ahol az adatok és programkód címtere teljesen elválasztott, pedig elvi lehetőség sincs a megvalósításra.

** Szerintem semmi sem akadályozza meg ilyen kód írását, csak semmi hatással sem lesz a futásra.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1449
  • Country: hu
Re: Rotate Second Reality
« Reply #29 on: 2024.January.12. 14:32:42 »
Hogy is volt. x86-nál védett módban az operációs renszdszer a valamekkora méretű virtuális memóriaszeleteket flag bittel jelöli, hogy az utasításmemória, nem adatmemória. Emiatt nem módosítható, és nem tölthető be adatként sem, mert lineáris a memóramodel (kétszer nem fordul elő egymás után). Olyat tehet hogy átmásolja vagy kicsomagolja magát a program az adatmemóriába, de a Data-Execution-Prevention (DEP) miatt nem hajthatja végre. (Azt hiszem az WinXP után ezt már default be is volt állítva).
 Mindez arra van kitalálva, hogy a rosszindulatú programok ne tudják magukat kicsomagolni, és aztán ezt a kicsomagolt kódot végrehajtani. A vírusellenőrzés régen mintákat keresett a fájlokban, amit a becsomagolás elfedett, így túl későn lett felismerve. Ma már sandboxban engedik tevékenykedni a programot, és amennyiben kicsomagolás után felismeri a rosszindulatú kódot, akkor a gépen el sem indítja.

Megjegyzem, nekem nem létezik más CPU csak a x86/64 és a Z80 :D