Welcome, Guest. Please login or register.


Author Topic: Basic BÚÉK (Read 4979 times)

Offline Ep128

  • EP addict
  • *
  • Posts: 1851
  • Country: hu
    • Honlapom
Basic BÚÉK
« on: 2022.December.28. 16:45:13 »

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Basic BÚÉK
« Reply #1 on: 2022.December.31. 06:10:54 »
Ezt nincs kedved átírni 2023 -ra is...? :-)
Megpróbáltam, de feladtam. Az eredeti basic programot nem találtam meg. Olyan cseles voltam a snapshot elkészítésekor, hogy a program letiltotta a resetet és a STOP-ot is, így saját magammal kiszúrtam, és nem találtam semmilyen lehetőséget, hogy a programot ki tudjam listázni. De ezzel nem adtam fel, hex editorban megnéztem a snapshotot, megkerestem a 2012-es számot és átírtam 2023-ra. Erre kiderült, az emulátor a CRC-t is nézi, így már nem nyílt meg a fájl.
Még mindig nem adtam fel, elmentettem emulátorral egy tetszőleges basic programot, ezt megnéztem hex editorban, és ehhez hasonlót próbáltam rittyenteni az említett basic programból. A fejléc hiányzott alapból, ez lett 00 04 valami hossz 00 00 00.... ezeket odaírtam az elejére, a basic programnak kinéző részt utána másoltam, de így se töltötte be. Lehet, hogy a sorszámok nem úgy vannak letárolva a snapshotban, mint a tokenizált basic programban. Még jó, hogy akkor nem volt tömörített snapshot, különben a basic programot se találtam volna meg benne.
Több ötletem nincs. Érdekelne, mások hogyan szendék ki a snapshotból a basic programot, esetleg a reset vagy a STOP tiltását fel lehet-e oldani a debuggerből és így kilistázni a programot.

UI: Ez lenne a snapshotból mesterségesen előállított, nem működő basic program:
[ Guests cannot view attachments ]
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14733
  • Country: hu
    • http://enterprise.iko.hu/
Re:Basic BÚÉK
« Reply #2 on: 2022.December.31. 13:34:09 »
Sokkal egyszerűbb visszaállítani a resetet. Debugerben >BFF8 04 01
Utána már csak az volt a szívatás, hogy magnós konfigban volt elkövetve, így nem volt egyszerű kiszedni a programot.
Kellett egy nyomtatós LUA script, és aztán LLIST-tel kimenteni.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Basic BÚÉK
« Reply #3 on: 2022.December.31. 14:05:19 »
Sokkal egyszerűbb visszaállítani a resetet...
Köszi! :smt041
Na, ezeket lenne jó tudni, hogy hol és mi történik, amikor kiadjuk pl. a set interrupt stop off parancsot. Már gondoltam arra is, elmentek egy snapshotot, ahol van stop, és egy olyan, ahol nincs, és valahogy összehasonlítom a kettő. Bár a debuggerben biztos könnyebb lenne, ha egyáltalán tudnám, mit kell nézni.

Utána már csak az volt a szívatás, hogy magnós konfigban volt elkövetve
Egyébként, ha a FileIO-t engedélyezed, szerintem a save "file:név" is működött volna.

Hex editorban összeollóztam egy basic program fejlécet és a snapshotból kibányászott, basic programra utaló adatokat, és akár működhetett is volna, csak nem jöttem rá, mit adjak meg a legelején a 00 04 után. Ez nyilván a program hossza, de azt miből kell kiszámolni? Már ott tartottam, hogy a tokenek alapján magam visszafejtem a programot, de hát pont arra van a basic, hogy ő fejtse vissza. Bosszantó, hogy a hosszbájt, vagy mi miatt ez nem ment. Meg még azt nem tudtam, a basic program végén hány darab 00 kell.

Nemsokára feltöltöm a 2023-as BÚÉK programot.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14733
  • Country: hu
    • http://enterprise.iko.hu/
Re:Basic BÚÉK
« Reply #4 on: 2022.December.31. 14:18:55 »
Na, ezeket lenne jó tudni, hogy hol és mi történik, amikor kiadjuk pl. a set interrupt stop off parancsot.
Az BFCDh címen van tárolva, tehát debuggerben >BFCD 0 paranccsal kapcsolható vissza.
Itt összeszedtem a rendszerszegmens pókolós címeit. Anno a Tippek és trükkök, Gépi kódú programozás, stb könyvekben meg sok cikkben volt ezeknek piszkálása sokat emlegetve :-D
(A táblázatba kikerestem az EXOS 2.0-ás címeket is.)
Jelen esetben a RST_ADDR illetve a STOP_IRQ címekre volt szükségünk, hogy vissza lehessen pókolni a letiltott dolgokat.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Basic BÚÉK
« Reply #5 on: 2022.December.31. 15:02:56 »
Aquafresh, a háromszoros védelem lerobbantva.
Már csak azt nem tudom, a 2023-as évszám jó-e, mert 2012 végén 2012 volt. Itt most előre gondolkodtunk. Szerencsére a basic programban most már bármit át lehet írni.
[ Guests cannot view attachments ]
[ Guests cannot view attachments ]
[ Guests cannot view attachments ]
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Ep128

  • EP addict
  • *
  • Posts: 1851
  • Country: hu
    • Honlapom
Re:Basic BÚÉK
« Reply #6 on: 2023.January.01. 00:58:43 »
Aquafresh, a háromszoros védelem lerobbantva.
Már csak azt nem tudom, a 2023-as évszám jó-e, mert 2012 végén 2012 volt. Itt most előre gondolkodtunk. Szerencsére a basic programban most már bármit át lehet írni.
(Attachment Link)
(Attachment Link)
(Attachment Link)

A fene se' gondolta, hogy ilyen nehezet kértem... :-P :-D
Köszi mindkettőtöknek! :-)

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Basic BÚÉK
« Reply #7 on: 2023.January.01. 14:59:15 »
A fene se' gondolta, hogy ilyen nehezet kértem... :-P :-D
A kérés reális volt. Az nem volt reális, hogy 10 éve olyan védelmet helyeztem a snapshotba, hogy én se tudtam visszafejteni. Nem tudom, mi értelme volt. Biztos megértem egyszer saját magamat, hogy magam elől is elrejtem a tartalmat... :D
Közben rájöttem, hogy visszafejtegetés helyett akár újra megírhattam volna a programot, az pár perc lett volna csak.
Bonyolult dolgok ezek.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re:Basic BÚÉK
« Reply #8 on: 2023.January.08. 20:51:03 »
UI: Ez lenne a snapshotból mesterségesen előállított, nem működő basic program:
talan.bas
Azt meg tudná mondani valaki, hogy ez a program miért nem működött? A snapshotban megkerestem a basic programot és odaraktam elé valami olyasmit, ami fejlécnek néz ki. Mit kellett volna még változtatni rajta és hogyan, hogy betölthető legyen?
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline geco

  • EP addict
  • *
  • Posts: 7113
  • Country: hu
    • Támogató Támogató
Re: Basic BÚÉK
« Reply #9 on: 2023.January.09. 11:52:37 »
A fejléc se volt jó, a 04h után a fájl mérete-32-t kell megadni, és szerintem 1-2 bájt a program elejéről is lemaradt, mert amikor megadtam a jó hossz értéket, akkor belefagyott az EP a fájl feldolgozásába.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Basic BÚÉK
« Reply #10 on: 2023.January.10. 12:13:20 »
szerintem 1-2 bájt a program elejéről is lemaradt
Nekem is befagyott, amikor próbálkoztam.
Lgb fileanalizátorával is megnéztem, az is kiakadt rajta és nem mutatott meg semmit belőle.
Kíváncsiságból kimentettem egy egysoros basic programot és megnéztem hex editorral, és az említett újévi program snapshotból kiszedett változatát is megnéztem hex editorral. Az elejének szerintem stimmelnie kellene, a hosszbájt kivételével, mert mindkét fájlban a fejléc után ugyanannyi 00 van, és utána a sorszámra vonatkozó adatok jönnek.

Példaprogram:
[ Guests cannot view attachments ]

A rettegett újévi program snapshotból kibányászott és faragott változata:
[ Guests cannot view attachments ]

Kíváncsi lennék, snapshotból hogyan lehet kiszedni egy memóriában lévő basic programot úgy, hogy az pl. igazi EP-be is betölthető legyen.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline geco

  • EP addict
  • *
  • Posts: 7113
  • Country: hu
    • Támogató Támogató
Re: Basic BÚÉK
« Reply #11 on: 2023.January.10. 16:02:58 »
Van 4 bájt shortage a TALAN.BAS-ban, betöltöttem, betöltötte az egészet, feldolgozás közben az F8:13E1 olvasása után fagyott meg, összehasonlítottam Zozo által hatástalanított verzióval, megnéztem, hogy ott az F8:13E1 olvasása hová esik , és így kijött hogy a TALAN.BAS-ból 4 bájt hiányzik és már "sit ENTERPRISEFOREVER.COM" első karakterére esett az olvasás, míg a jó verzióban a "Q visit ENTERPRISEFOREVER.COM" legelejére, a Q (51h) gondolom a REM utasítás kódja, a TALAN.BAS-nál ebben a pozícióban s (73h) van, ami a szöveg része, ilyen utasítás nincs, és így végtelen ciklusba kerül a basic program feldolgozása.
A két fájl "Q Character Definer" -ig megegyezik, itt jön a 4 bájt elmaradás, ami 2012.
Meg is oldottam, a file-ban 0105h pozícióban az 1eh hossz értéket lecsökkentettem 1ah-ra, és megjavult a program :D
Plusz kiegészítettem a végét egy new line-nal 0ah, meg egy kis üres résszel , nemtom ez szükséges volt-e.
« Last Edit: 2023.January.10. 16:06:32 by geco »

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9926
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Basic BÚÉK
« Reply #12 on: 2023.January.10. 17:48:26 »
Úgy nagyjából értem, bár a szakkifejezések kínaiak nekem. Szóval valahogy eltűnt a !-jeles sor végéről a 2012 szöveg, valószínűleg én töröltem le, csak nem emlékszem rá. És ezzel a sor hosszát leíró bájt téves lett, és ezen borult az egész, ha jól értem.
Nem tudom, gyakorlati haszna lehet-e a jövőben, de hogyan lehetne egy basic programot a snapshotból kiszedni, betölthető basic program formátumra? Magát a programot meg lehet találni a snapshotban hex editorral, az elejét biztosan. A végét pontosan belőni már nehezebb, talán elég az utolsó sort leíró bájtokat (sorszám és sor hossza) megkeresni, és abból kiszámolni, hol a sor vége? És ha megvan a program az elejétől a végéig, akkor a hosszt hogyan kell meghatározni? Össze kell számolni, összesen hány bájt a program, gondolom fejléc nélkül, és úgy írni meg a fejlécet, hogy az elején 00 04 legyen, utána néhány bájtban a hosszt kell megadni, és a fejléc hossza összesen 16 bájt legyen, a nem használt bájtokra 00-t írni be?
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline geco

  • EP addict
  • *
  • Posts: 7113
  • Country: hu
    • Támogató Támogató
Re: Basic BÚÉK
« Reply #13 on: 2023.January.10. 19:08:24 »
Az a fura, hogy akkor valami hex editorral kellett ténykedned a fájlban, mert az rövidebb is lett.
Igen, meg kell keresni az elejét, és a végét, és betenni egy fejécet elé, a hossz meghatározása a fejléces fájlméret - 32.
Tedd fel lécci a snapshotot, amiből csináltad a talan.bas-t

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14733
  • Country: hu
    • http://enterprise.iko.hu/
Re: Basic BÚÉK
« Reply #14 on: 2023.January.10. 19:32:30 »
Miért nem használtok debuggert? :oops:
És BASIC-ben turkáláshoz ajánlott olvasmány: Tippek és trükkök
21Ah-n van a program kezdetének címe
236h:
Quote
A változó tábla elejének címét tárolja. Ez a cím a tárolt Basic program utáni első memória rekeszre mutat. Ennek ismeretében az általunk beírt Basic program hosszát mi magunk is meghatározhatjuk