Robotrontechnik-Forum

Registrieren || Einloggen || Hilfe/FAQ || Suche || Mitglieder || Home || Statistik || Kalender || Admins Willkommen Gast! RSS

Robotrontechnik-Forum » Technische Diskussionen » Ein Dithering-Bild in der Vollgrafikerweiterung KRT 11 eingeladen. » Themenansicht

Autor Thread - Seiten: -1-
000
30.05.2013, 17:21 Uhr
funkheld



Hallo, ich habe jetzt mal ein Dithering-Bild in der Vollgrafikerweiterung KRT 11 reingeladen bei dem Z1013 mit dem FORTH , natürlich mit dem JKcemu.
Ist schön anzusehen bei nur 256x256 Pixel.
Unten ist das Freebasicprogramm, womit ich die BMP-Bilder 256x256 S/W in das eigentümliche Format von der Vollgrafikerweiterung KRT 11 umwandle und abspeichere. Und mit dem FORTH-Programm lade ich die in den Screenbuffer bei mir ab Hex 8000 abgelegten Daten in den Grafikspeicher vom Z1013.


Quellcode:
VARIABLE Z
VARIABLE Q

CODE GOUT
DE POP,
E A LD,
8 # OUT,
NEXT END-CODE

HEX

: BILD
  GON
  GCLS
  0 1 - Q !
  0 1 - Z !
  2000 0 DO
    Z @ 1 + DUP Z ! GOUT
    400 0 DO
      Q @ 1 + Q !
      8000 Q @ + @ EC00 I + !
    LOOP
  400 +LOOP
  KEY
  DROP
  GOFF ;

DECIMAL


Quellcode:
#include "fbgfx.bi"

Dim Shared As Integer x,y,wert,einzelbit,versatz,zeile,bytestueck
Dim Shared As integer ptr scr_img
dim Shared As integer ptr scr_img1
Dim Shared As UByte byteinhalt

ScreenRes 700,300,32

scr_img=imagecreate(256,256,0)
scr_img1=imagecreate(256,256,0)

BLoad "d:\kc\kc-bild\z1013.bmp",scr_img
Color ,RGB(128,128,128)
Cls
Put (150,20),scr_img,PSet
Put (420,20),scr_img1,PSet

Locate 4,2
Print "D-Taste"    
Do
   Sleep 1
   If MULTIKEY(FB.SC_ESCAPE) Then
       End
   EndIf
  
   If MULTIKEY(FB.SC_D) Then
       Open "d:\kc\kc-bild\z1013.bin" FOR binary AS #1
          
       For versatz=0 To 7
            For zeile = versatz To 255 Step 8
               For ByteStueck = 0 To 31
                  ByteInhalt = 255
                  For EinzelBit = 0 To 7
                     wert=Point(ByteStueck * 8 + 7 - Einzelbit ,zeile ,scr_img)
                     If wert=-1 Then
                        ByteInhalt=ByteInhalt - (1 Shl Einzelbit )
                        PSet scr_img1,(ByteStueck * 8 + 7 - Einzelbit ,zeile),&hffffff
                     EndIf
                  Next
                  Put #1,,ByteInhalt
                  Put (420,20),scr_img1,PSet
               Next
            Next    
       Next
      
    Close #1  
   EndIf
Loop

[url=http://picup.oliverlamm.de/files/IMG_e92b124586bfdde06c74ac670653f367_2335TT4wDimHM.jpg][/url]

Gruss
peter

Dieser Beitrag wurde am 31.05.2013 um 12:16 Uhr von funkheld editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
001
31.05.2013, 07:27 Uhr
volkerp
Default Group and Edit
Avatar von volkerp

der Z1013 im Z1013 sieht cool aus. Gut gemacht!
--
VolkerP

http://hc-ddr.hucki.net
(Z9001, Z1013, LC-80, ...)
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
002
01.06.2013, 10:14 Uhr
funkheld



Hallo, es geht noch schneller.

Mit dem MOVE-Befehl von Forth kann ich jetzt ca 4 8Kb Bilder pro/Sekunde einladen.

Gruss
peter


Quellcode:
VARIABLE Q

HEX

: BILD
  GON
  GCLS
  8000 400 - Q !
  8 0 DO
    I 8 P!
    Q @ 400 + DUP Q ! EC00 400 MOVE
  LOOP
  KEY
  DROP
  GOFF ;

DECIMAL


Dieser Beitrag wurde am 02.06.2013 um 09:21 Uhr von funkheld editiert.
Seitenanfang Seitenende
Profil || Private Nachricht || Suche Zitatantwort || Editieren || Löschen
Seiten: -1-     [ Technische Diskussionen ]  



Robotrontechnik-Forum

powered by ThWboard 3 Beta 2.84-php5
© by Paul Baecher & Felix Gonschorek