[Tiptoi] Viele, Viele Fragen zu Registern, OID-Codes, Media-Codes ...
Joachim Breitner
mail at joachim-breitner.de
Mo Mai 29 05:48:05 CEST 2017
Hi,
Am Sonntag, den 28.05.2017, 23:18 +0200 schrieb Frankes:
> Soviel habeich schonmal zusammen getragen:
> Media file table:
> Hier liegen anscheinend die Soundfiles. Als Zeiger oder als Code?
> Wie hängt damit dann die Playlist zusammen.
Die Media-File-Table ist eine Liste von (Pointer, Länge).
Die Position in diese Tabelle ist die Zahl, die in der Playlist steht.
Die Position in der Playlist ist die Zahl, die im P-Befehl stehlt.
Mit "tttool explain ...gme" kannst du dir die Dateistruktur erläutern
lassen. Wenn du das mit der zugehörgen YAML-Datei vergleichst, sollte
vieles klarer werden. (Oder frag ruhig weiter hier, das ist auch gut.)
> Script Table:
> Das Script. Wobei mir nicht klar ist, ob die Script Codes mit den Registern
> der Table übereinstimmen.
> 8839:
> $1:=5
>
> Ist dann 8839 auch das Register, oder denke ich mal wieder zu kompliziert.
> Wenn ja, was passiert dann mit weiteren Anweisungen aus der Zeile?
Ja, du denkst zu kompliziert :-)
Die Script-Codes haben nichts mit den Registern zu tun. In C-Sprech:
Script-Codes sind Jump-Labels, Register sind Variablen, und es gibt
keine Pointer.
> Gut. - Register impliziert bei mir halt einen direkten Zugriff auf die
> Hardware.
Das ist nicht falsch. Register $2 ist eine Speicherstelle, auf die wird
direkt zugegriffen – es gibt keine Pointer oder so.
Leider nein. Soundfiles werden über ihre Nummer in der „media file
> > table“ adressiert, und diese Nummer ist fest im P-Befehl angegeben.
> > (Wobei – hat das mal jemand ausprobiert ob man ein Register im P-Befehl
> > funktioniert)?
>
> Ja habe ich probiert, wurde aber vom tttool abgelehnt. Vielleicht mal direkt
> in einer Script Datei probieren.
Du meinst GME-Datei? Es stimmt dass das tttool nur kann was wir
verstehen. Wenn du anderes experimentieren willst, musst du in der
regel den Hexeditor rausholen.
> > > 4. Die mysteriösen PA(b-a), P(b-a)
> > > Ist darüber schon mehr bekannt? Wie werden die überhaupt angewendet?
> > > a== lowbyte
> > > b==highbyte
> > > impliziert, dass ich wissen müsste, in welchem Adressbereich diese
> > > liegen und
> > > welche Soundfiles dazwischen liegen.
> > > Mit PA(hello-Molly) wüsste ich nur, dass er hello.ogg und Molly.ogg
> > > spielt,
> > > aber welche Soundfiles noch?
> >
> > Jede Skriptzeile enthält die „Playlist“, wo Medien-Nummern drin stehen.
> > Die Zahlen im PA-Befehl beziehen sich auf diese Playlist.
>
> Das kann ich noch nicht nachvollziehen. Somit wären 8Bit in jeder Zeile mit
> dem gleichen Inhalt belegt? - Was für eine Registerbreite hat der TipToi :
> 16Bit?
Das meiste Zeug ist 16bit breit, ja.
> > Was diese Indirektion soll wissen wir auch nicht; vielleicht um mit
> > 8bit alle Medien anzusprechen.
>
> Heißt aber auch, dass lediglich 256 Soundfiles möglich sind.
Deswegen die Indirektion. Die 8-bit-Zahl im P-Befehl verweist auf die
Playlist (die es ja pro Skriptzeile gibt!), und dort stehen dann 16-
bit-Zahlen, die auf die Medientabelle verweisen.
Gruß,
Joachim
--
Joachim Breitner
mail at joachim-breitner.de
http://www.joachim-breitner.de/
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : signature.asc
Dateityp : application/pgp-signature
Dateigröße : 833 bytes
Beschreibung: This is a digitally signed message part
URL : <https://lists.nomeata.de/pipermail/tiptoi/attachments/20170528/a9da40f6/attachment.asc>
Mehr Informationen über die Mailingliste tiptoi