DEUTSCHE VERSION |
|
Links | | | Forums | | | Comments | | | Report news |
Chat | | | Polls | | | Newsticker | | | Archive |
amiga-news.de Forum > Programmierung > Screeninfo via Arexx | [ - Search - New posts - Register - Login - ] |
-1- | [ - Post reply - ] |
2003-12-31, 16:00 h Palgucker Posts: 1342 User |
Habe mal wieder ein kleines Problem. Ich bastele gerade an einem Script für eine Slideshow herum. Nun würde Ich nur gerne wissen, ob der Screen nun hires, laced oder beides ist. Da es sich um ILBM's mit CAMG-Chunk handelt, könnte ich diesen ja auch auslesen, das wollte ich aber vermeiden, da ich dann zusätzlich die Bilder öffnen müsste (was im Notfall natürlich auch nicht so schlimm wäre). Bisher benutze ich dafür einen Arexxscript-Schnipsel eines anderen Programmierers, der einiges recht elegant löst. code:/* rexx */ ibase=showlist(l,"intuition.library",,a) call forbid; scrA=next(ibase,56) scrW=c2d(IMPORT(offset(scrA,12),2)) scrH=c2d(IMPORT(offset(scrA,14),2)) screen=word(IMPORT(next(scrA,26)),1) call permit say scrW say scrH say screen Ist es auf diese Weise auch möglich, den Screenmode des vordersten Bildschirms herauszufinden, oder zumindestens die Flags für hires und laced? Interessant wäre für mich natürlich auch, ob und wo man über diese Offsetwerte was nachlesen kann. mfg Palgucker und allen einen guten Rutsch [ - Answer - Quote - Direct link - ] |
2003-12-31, 16:39 h thomas Posts: 7718 User |
Die Flags, die du meinst, stehen auf Offset 76. Den ScreenMode bekommt man nich heraus (s.u.). Die Offsets selber mußt du wohl selbst berechnen (bzw. berechnen lassen). Wie die Strukturen aufgebaut sind, steht in den Include-Dateien, die im NDK enthalten sind. Allerdings ist das ganze Auslesen aus dem Speicher eher OS1.3-Stil. Unter AGA oder Grafikkarte wirst du Flags wie HIRES oder LACE nicht mehr finden. Dort gibt es eine DisplayID, mit deren Hilfe du in der Display-Datenbank nachsehen kannst. Allerdings funktioniert das ganze nur mit den entsprechenden Funktionen der graphics.library. Mit ARexx hast du da nicht viele Chancen. In Programmiersprachen wie C und Assembler kann man dann auch die entsprechenden Namen verwenden, anstatt die Offsets auszurechnen. Das übernimmt dann der Compiler. Aber vielleicht sagst du einfach mal, was dabei herauskommen soll. Vielleicht kenne ich ja eine einfache Lösung für ARexx. Gruß Thomas -- Email: thomas-rapp@web.de Home: home.t-online.de/home/thomas-rapp/ [ - Answer - Quote - Direct link - ] |
2003-12-31, 18:02 h Palgucker Posts: 1342 User |
Hallo Thomas Dann werde ich mir den Offset 76 mal etwas genauer anschauen. Das ich unter AGA diese Flags nicht finden werde, macht mich aber etwas stutzig. Was mich aber zur nächsten (abschäulichen ) Idee bringt. Wenn man in der Copperliste nach dem BPLCON0 = $100 suchen würde und die Bits 2 und 15 ausliest - hätte ich das, was ich suche. Man müsste nur die zum aktuellen Screen zugehörige Copperliste finden... Und da geht es schon wieder los. Zur Erklärung vielleicht noch, in dieser Slideshow, die aus gerippten Bildern allermöglichen Demos der letzten Jahre besteht, habe ich den Bildern die orginalen Screenmodes verpasst, in denen sie auch im Demo zu sehen waren. Nun setze ich natürlich für übergrosse Bilder Dein Scrollscreen Programm ein. Dabei sollen natürlich Bilder, die kleiner sind als mein Offset nicht gescrollt werden. Diese Grenzen ändern sich natürlich mit dem Screenmode, So das z.B Loresbilder mit einer Höhe von 512 nicht mehr gescrollt werden, obwohl sie nicht ganz zu sehen sind. Mehr ist es eigentlich nicht. mfg Palgucker [ - Answer - Quote - Direct link - ] |
2003-12-31, 18:44 h Palgucker Posts: 1342 User |
Hi nochmal Habe mir mal Offset 76 angeschaut, und es scheint genau das zu sein, was ich suche. Kann es sein, das hier die selben Werte vorliegen, wie im Bitplancontrollregister 0 der Copperliste ? Besten Dank auf jedenfall schonmal. mfg Palgucker [ - Answer - Quote - Direct link - ] |
-1- | [ - Post reply - ] |
amiga-news.de Forum > Programmierung > Screeninfo via Arexx | [ - Search - New posts - Register - Login - ] |
Masthead |
Privacy policy |
Netiquette |
Advertising |
Contact
Copyright © 1998-2024 by amiga-news.de - all rights reserved. |