News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Ludwig63

Bildschirm Koordinaten Programm

Started by Ludwig63, 21:10, 18 July 16

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Ludwig63

Hallo wer kann mir helfen

CPC6128
Ich suche einen Bildschirm Koordinaten Programm es soll die Koordinaten z.B &da34 anzeigen mit einem Fadenkreuz.
Das ganze soll mit den Pfeiltasten gesteuert werden
Wer kann mir da helfen
Das Programm soll in Basic sein Mode 2

SRS

Als Tip:

das hier könnte helfen:

BC1D SCR DOT POSITION Konvertiere eine Grafik-Position in 'Basis'-
Koordinaten in die zugehörige Bildspeicher-
Adresse

ansonsten mal im Wiki nachlesen wie man aus x,y -> Bildschirmadresse rechnet und umdrehen ?

Devilmarkus

Lieber Ebo,
Ich habe Dir das schon einmal Beschrieben:

QuoteMal im Ernst: Rechne Dir das doch selber aus.
Die obere linke Bildecke beginnt bei &C000 (49152)
Jede Linie ist &50 (80) Bytes lang. Wobei Du dabei beachten musst: &00-&4f = &50 Bytes.

Da ja nun jede "Zeile" erst ab 8 gefüllten Linien beginnt, muss man nun nur noch die Koordinaten umrechnen.
Erste Zeile geht nun also von &C000 bis &C04F.
Zweite Zeile von &C800 bis &C84F.
Dritte Zeile von &D000 bis &D04F.
....
Achte Zeile von &F800 bis &F84F

Nun musst du wiederum bei &C0xx anfangen:
Hier musst Du also nur wiederum beachten: Jede Zeile ist &50 Bytes lang, also kommen zu &C000 noch &50 drauf, also &C050!!!
Um 8 Zeilen zu springen, kommt nun also die Neunte Zeile:
Neunte Zeile: &C050 bis  &C09F
Zehnte Zeile: &C850 bis  &C89F

Und so weiter!
Also zwar umständlich, aber einfach!

Ich zeige Dir mal ein Beispiel: (Ich schreibe die ersten 16 Bildschirmlinien)
10 MODE 1
100 FOR t=&C000 TO &C04F:POKE t,255:NEXT
110 FOR t=&C800 TO &C84F:POKE t,255:NEXT
120 FOR t=&D000 TO &D04F:POKE t,255:NEXT
130 FOR t=&D800 TO &D84F:POKE t,255:NEXT
140 FOR t=&E000 TO &E04F:POKE t,255:NEXT
150 FOR t=&E800 TO &E84F:POKE t,255:NEXT
160 FOR t=&F000 TO &F04F:POKE t,255:NEXT
170 FOR t=&F800 TO &F84F:POKE t,255:NEXT
180 FOR t=&C050 TO &C09F:POKE t,255:NEXT
190 FOR t=&C850 TO &C89F:POKE t,255:NEXT
200 FOR t=&D050 TO &D09F:POKE t,255:NEXT
210 FOR t=&D850 TO &D89F:POKE t,255:NEXT
220 FOR t=&E050 TO &E09F:POKE t,255:NEXT
230 FOR t=&E850 TO &E89F:POKE t,255:NEXT
240 FOR t=&F050 TO &F09F:POKE t,255:NEXT
250 FOR t=&F850 TO &F89F:POKE t,255:NEXT


Das kann man natürlich mit FOR-NEXT-Schleifen eleganter machen, aber es soll Dir nur verdeutlichen, wie das geht!

Aufgrund dieser Basis solltest Du in der Lage sein, Dir selber so ein Programm zu schreiben.
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Ludwig63

 Das ist nicht was ich gemeint habe 

Devilmarkus

Das reicht aber an Info, Ebo.
Damit kannst Du Dir so ein Programm schreiben, was einen Cursor hat, welcher Dir die Adresse anzeigt.
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Powered by SMFPacks Menu Editor Mod