[Tiptoi] TT-Homebrew - Eigene Binaries für GME-Dateien programieren

Florian tttool at florian.rgrplay.de
Mo Okt 28 17:23:21 CET 2024


Hallo,

> hmm, ärgerlich, muss ich mir mal anschauen. Hast du den cachix-cache
> aktiv?
Nein, hatte mir gedacht, ein kleines CLI-Tool, wie lange kann das schon 
brauchen🙃. Ich probiere es jetzt mal mit cache.


> Die Offsets wie
>
> #define new_oid 0xded
>
> sind die für eine Chipversion wirklich konstant, und nicht eventuell
> von der Firmwareversion abhängig? Oder anders gefragt: ist der offset
> klar in den binaries von ravensburger gehardcoded, oder kann es sein
> dass die den selbst wiederum irgendwo auslesen

Ja, 0x0ded ist gehardcodet.

         08000108 ed 0d d5 e5     ldrb param_1,[OidPara,#0xded]


> Ah, ja, ok, das ist ein bisschen netter – im Moment schreibt man
>
> scripts:
>    4242: G(0)
>    4243: G(1)
> binaries:
>    games3201:
>    - suchspiel/1.bin
>    - taschenrechner/1.bin
>    games3202n:
>    - suchspiel/2N.bin
>    - taschenrechner/2N.bin
>    games3203l:
>    - suchspiel/3L.bin
>    - taschenrechner/3L.bin
>
> was auch tut, aber ein bisschen weniger komfortabel ist. Ich lass das
> erstmal so bis der rest zuverlässig tut, dann kann ich das immernoch
> verfeinern.
Ich dachte, es sei generell nicht möglich, mehrere Spiele zu definieren. 
So geht es auch.


Mit freundlichen Grüßen,

Florian


On 28.10.24 17:08, Joachim Breitner via tiptoi wrote:
> Hi,
>
>
> Am Montag, dem 28.10.2024 um 16:43 +0100 schrieb Florian via tiptoi:
>> Hallo,
>>
>> ich habe versucht tttool zu kompilieren, aber nach 2h kam folgender Fehler:
>>
>>          error: hash mismatch in fixed-output derivation
>> '/nix/store/mxw2nchhcyygdkq71x05pq3hahh8gapy-haskell-project-plan-to-nix-pkgs.drv':
>>            specified: sha256-hy8KuisPm/9FWDHPsV5IGFCWl7+VAjezT1DBH0wE1Yk=
>>               got: sha256-4rqhwNog6giXyq4MuNX9BqnRvKOmdinOm7GYE6e2pvU=
>
> hmm, ärgerlich, muss ich mir mal anschauen. Hast du den cachix-cache
> aktiv?
>
>
>> Habe jetzt einfach selber ein Taschenrechner geschrieben. Da ich keine
>> OIDs drucken kann, habe ich "Der hungrige Zahlen-Roboter" genommen.
>>
>> Hier der Link:
>> https://github.com/GauiPower/tt-homebrew/blob/master/packages/robo_calculator/main.c
>
> cool! Und funktioniert alles? Bin mal gespannt was mein Fehler ist,
> wenn ichs dann mal rausgefunden haben :-)
>
> Die Offsets wie
>
> #define new_oid 0xded
>
> sind die für eine Chipversion wirklich konstant, und nicht eventuell
> von der Firmwareversion abhängig? Oder anders gefragt: ist der offset
> klar in den binaries von ravensburger gehardcoded, oder kann es sein
> dass die den selbst wiederum irgendwo auslesen?
>
>
>>> Das gut doch jetzt schon, also als G(0), oder? Oder gehts dir darum,
>>> einen Namen statt G(0) benutzen zu können.
>> scripts:
>>
>>          4242: G(suchspiel)
>>
>>          4243: G(taschenrechner)
>>
>> binaries:
>>         suchspiel: [suchspiel/1.bin, suchspiel/2N.bin, suchspiel/3L.bin]
>>
>>         taschenrechner: [taschenrechner/1.bin, taschenrechner/2N.bin,
>> taschenrechner/3L.bin]
>>
>> So in etwa habe ich mir das vorgestellt.
> Ah, ja, ok, das ist ein bisschen netter – im Moment schreibt man
>
> scripts:
>    4242: G(0)
>    4243: G(1)
> binaries:
>    games3201:
>    - suchspiel/1.bin
>    - taschenrechner/1.bin
>    games3202n:
>    - suchspiel/2N.bin
>    - taschenrechner/2N.bin
>    games3203l:
>    - suchspiel/3L.bin
>    - taschenrechner/3L.bin
>
> was auch tut, aber ein bisschen weniger komfortabel ist. Ich lass das
> erstmal so bis der rest zuverlässig tut, dann kann ich das immernoch
> verfeinern.
>
>
> Cheers,
> Joachim


Mehr Informationen über die Mailingliste tiptoi