Ich habe mal einen kleinen Code für dich geschrieben, versehen mit ein paar Kommentaren komms du damit sicherlich weiter.
Code: Alles auswählen
Dim LEDs.l(87, 39)
; LEDs aus Datsection einlesen
; Restore LED1
For j = 0 To 11
For i = 0 To 29
Read LEDs(i, j)
Next
Next
InitSprite()
OpenWindow(0, 0, 0, 88 * 9, 40 * 7, #PB_Window_SystemMenu | #PB_Window_ScreenCentered, "LED-Test")
OpenWindowedScreen(WindowID(0), 0, 0, 800, 400, 0, 0, 0)
Repeat
ClearScreen(0, 0, 0)
StartDrawing(ScreenOutput())
; LEDs anzeigen
For i = 0 To 87
For j = 0 To 39
; Wenn an der Position im Array eine 1 steht
If LEDs(i, j) = 1
Color = RGB(127, 0, 0) ; Dunkelrot
Else
Color = RGB(50, 0, 0) ; Schwarz
EndIf
; LED anzeigen
Box(i * 9, j * 7, 8, 6, Color.l)
Next
Next
StopDrawing()
FlipBuffers()
Select WindowEvent()
Case #PB_EventCloseWindow
Break
; Wenn die linke Maustaste gedrückt wurde
Case #WM_LButtonDown
; Berechne die Position der LED anhand der Mauskoordinaten
x.l = WindowMouseX() / 9
y.l = WindowMouseY() / 7
; Ändere den Wert an dieser Stelle
LEDs(x, y) ! 1
EndSelect
Delay(1)
ForEver
DataSection
LED1:
; H i !
Data.l 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 1, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
; P l a n k t o n
Data.l 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0
Data.l 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0
Data.l 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1
Data.l 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1
EndDataSection