Author Topic: Re: Hello everyone :)  (Read 28167 times)

0 Members and 1 Guest are viewing this topic.

Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« on: December 01, 2008 »
okies i've read the tutorial it helped a lot ! ;D , i also saved it for future reference in case i need to refresh my memory.

now my question is this.

lets say i want to load a picture in the background and have a simple hello world text passing by, no special effects or music or something like that just a pic and plain text.

how will i do that ??? ::) :skint:

also what type of format should i use, .jpeg .gif .png .bmp ?
« Last Edit: December 21, 2008 by va!n »


Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #1 on: December 01, 2008 »
Heya bikerboy :) Sorry for not responding earlier.

Quote
ok i made a little something (you know how anxious i am to create a demo), but it's not entirely in free basic, actually 2 parts are freebasic and 3 parts made with "the oldschool demomaker" and i combined all that into one file.

I'm sorry but I don't really understand :P What did you actually do on this file ?


Quote
lets say i want to load a picture in the background and have a simple hello world text passing by, no special effects or music or something like that just a pic and plain text.

To load a picture (in BMP format) or Draw easily text on graphics screen in FB, you have some useful functions :)

Code: [Select]
'' 0) init graphics
Screenres 640,480,32,2

'' 1) Create a pointer
Dim as any ptr MyImage

'' 2) Allocate memory
MyImage = imageCreate(Your_Image_X_Size, Your_Image_Y_Size)

'' 3) Load your image
Bload MyImage, "location_of_your_image.bmp"


'' And then, you can put that image on screen with the.. "put" command :D

4) Draw the image on screen
Put (x,y),MyImage

'' There are a lot of cool options with put. Look on the wiki or in the help file (alpha blending, ..)

'' Now some text ?
Draw String(x,y),"What you want to write"

'hope that'll help a bit :)



Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #2 on: December 01, 2008 »
Heya bikerboy :) Sorry for not responding earlier.

Quote
ok i made a little something (you know how anxious i am to create a demo), but it's not entirely in free basic, actually 2 parts are freebasic and 3 parts made with "the oldschool demomaker" and i combined all that into one file.

I'm sorry but I don't really understand :P What did you actually do on this file ?

not much actually ::) , i created 3 intros with OSDM and also took 2 examples from freebasic and put all those together :P

thanx for the code man  ;D
* bikerboy goes to play with the code and FBide :carrot:
« Last Edit: December 21, 2008 by va!n »


Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17409
  • Karma: 498
  • evil/good
    • View Profile
    • My Homepage
Re: Hello everyone :)
« Reply #3 on: December 01, 2008 »
Better to code your own stuff, OSDM really sucks goat balls.
If you get stuck, please do open a topic and ask :)
Shockwave ^ Codigos
Challenge Trophies Won:

Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #4 on: December 01, 2008 »
Bis repetitam :D

I don't know OSDM but in ANY way, coding your stuff will be a thousand times more enjoyable, efficient, practical (and ego-rewarding :P)


Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #5 on: December 01, 2008 »
lol i know, i only did it for the fun of it :xmas: , i prefer to make my own stuff (if i ever manage to do that :boxer: lol)

anyways i played with the code you gave me and i have a couple of questions.

first with the text thingie, i put this as a code, also added the sleep so the window won't close, it compiles and everything but no text appears ???


Code: [Select]
'' Now some text ?
Draw String(100,100),"What you want to write"
sleep

also a few questions about the image code.


Code: [Select]
'' 0) init graphics
Screenres 640,480,32,2

'' 1) Create a pointer
Dim as any ptr MyImage

'' 2) Allocate memory
MyImage = imageCreate(Your_Image_X_Size, Your_Image_Y_Size) *should i make this one (1.bmp_640_Size, 1.bmp_480_Size) ?*

'' 3) Load your image
Bload MyImage, "C:\Documents and Settings\bikerboy\Desktop\1.bmp" *i hope i did this correctly*

4) Draw the image on screen
Put (x,y),MyImage  *should i also change this one to 4) Draw the image on screen
Put (640,480),1.bmp ?


Offline Shockwave

  • good/evil
  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 17409
  • Karma: 498
  • evil/good
    • View Profile
    • My Homepage
Re: Hello everyone :)
« Reply #6 on: December 01, 2008 »
Time to split these topics up into the right forums I think..

Shockwave ^ Codigos
Challenge Trophies Won:

Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #7 on: December 01, 2008 »
Split. Bikerboy, please rename this post as you wish :)

I move it to the good section and I answer you.

[...]

Done :)

Ok so, I start with the image handling :

Quote
Code: [Select]
'' 2) Allocate memory
MyImage = imageCreate(Your_Image_X_Size, Your_Image_Y_Size)
*should i make this one (1.bmp_640_Size, 1.bmp_480_Size) ?*

Nope, you replace "Your_Image_X_Size" by the actual width of the bitmap you want to load. in pixels. Idem for "Your_Image_Y_Size".


Quote
Code: [Select]
'' 3) Load your image
Bload MyImage, "C:\Documents and Settings\bikerboy\Desktop\1.bmp
"*i hope i did this correctly*

hum.. I think freebasic handles "/" but I don't know about "\". The best about it is to put the image in the actual .bas file folder and loading it with just "image_name.bmp"


Quote
Code: [Select]
4) Draw the image on screen
Put (x,y),MyImage 
*should i also change this one to 4) Draw the image on screen
Put (640,480),1.bmp ?

Nope, "MyImage" is the pointer you allocated :) If you'd declare the pointer as My_Supa_Image, you'd write :

Put(50,50),My_Supa_Image

to put the image at the location (x=50, y=50)   (it's the position of its up-left corner)
« Last Edit: December 01, 2008 by Hezad »

Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #8 on: December 01, 2008 »
ok since the topic is moved and splitted i'll post here. ;)

ok i've read the help me file from freebasinc and i used this code to load a .bmp


Code: [Select]
'Load a graphic to current work page
SCREEN 18, 32
CLS
BLOAD "C:\Documents and Settings\bikerboy\Desktop\1.bmp"

'Load a 48x48 bitmap into an array
SCREEN 18, 32
DIM garray(4 * (48 * 48) + 4) AS BYTE
BLOAD "C:\Documents and Settings\bikerboy\Desktop\1.bmp", @garray(0)
PUT (10,10),garray(0)
sleep

the image i'm trying to load is this one



FBIde gives me no errors but when i run it, it crashed FBIde ???


Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #9 on: December 01, 2008 »
(I edited my previous post, please take a look at it :) )

Quote
'Load a graphic to current work page
SCREEN 18, 32
CLS
BLOAD "C:\Documents and Settings\bikerboy\Desktop\1.bmp"

'Load a 48x48 bitmap into an array
SCREEN 18, 32
DIM garray(4 * (48 * 48) + 4) AS BYTE
BLOAD "C:\Documents and Settings\bikerboy\Desktop\1.bmp", @garray(0)
PUT (10,10),garray(0)
sleep

You're initiating the graphics screen two times here (by calling Screen 18,32 two times)

In fact, if you're new with all this, you'd better use the method I showed you (imageCreate, etc..), it'll ensure you to allocate the good memory, everything is automatic :) Of course, learning how all this is stored in memory is really nice too but I'm not sure it's a good thing to start with :)
But it's just my humble opinion :)

Concerning this code in particular, a remark :
Code: [Select]
DIM garray(4 * (48 * 48) + 4) AS BYTElet me think your image is 48 pixels wide and 48 pixels high. If it's not the case, there's a problem here :) And the image you posted is waaay bigger than 48*48 pixels :D

Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #10 on: December 02, 2008 »
ok now i used this code

Code: [Select]
'' 0) init graphics
Screenres 640,480,32,2

'' 1) Create a pointer
Dim as any ptr MyImage

'' 2) Allocate memory
MyImage = imageCreate(640, 480)

'' 3) Load your image
Bload MyImage, "1.bmp"


'' And then, you can put that image on screen with the.. "put" command :D

4) Draw the image on screen
Put (50,50),MyImage

and i get this

Code: [Select]
Compiler output:
C:/Program Files/FreeBASIC/FBIDETEMP.bas(11) error 55: Type mismatch, at parameter 1 of BLOAD() in 'Bload MyImage, "1.bmp"'
C:/Program Files/FreeBASIC/FBIDETEMP.bas(16) error 135: Only valid in -lang deprecated or fblite or qb in '4) Draw the image on screen'

Results:
Compilation failed

also this one here

Code: [Select]
'' Now some text ?
Draw String(100,100),"What you want to write"
sleep

compiles and runs fine but the string "What you want to write" does not appear.

EDIT: i get those errors a lot, is there something i'm missing? is there something i should do to fix it?

thanx for all your help so far :clap:


Code: [Select]
error 135: Only valid in -lang deprecated or fblite or qb, found 'option' in 'option explicit'

error 135: Only valid in -lang deprecated or fblite or qb, found 'option' in 'option static'
« Last Edit: December 02, 2008 by bikerboy »


Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #11 on: December 02, 2008 »
hum.. first about Bload, I'm sorry, I inverted two arguments :(

So it's not
Code: [Select]
Bload MyImage, "1.bmp"
but

Quote
Bload "1.bmp", MyImage
my bad, sry for that.


And look at the 4), it's not commented :) So the compiler was thinking it's a "command" :
Replace
Code: [Select]
4) Draw the image on screenwith

Code: [Select]
'' 4) Draw the image on screen
(don't forget the ' (comment) keyword  :) )

I typed it a bit quickly maybe, sry for that. it should work now :)

Also, don't forget the "sleep" command !

Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #12 on: December 02, 2008 »
no worries for the typos mate  :D it happens to the best ;)

ok it works now perfectly ! , i also found out that it wouldn't load the bmp file when i compiled it (showed a purple screen), but is shows up if you put the bmp in the same folder with the created .exe  :clap:

i also added the text and it works too, and i played a bit with it hehe  ;D

* bikerboy is going to attach the .exe thingie to the post

once again thanx guys for all your help :goodpost:

EDIT: oh forgot to post the code i used ::)


Code: [Select]
'' 0) init graphics
Screenres 640,480,32,2

'' 1) Create a pointer
Dim as any ptr MyImage

'' 2) Allocate memory
MyImage = imageCreate(640, 480)

'' 3) Load your image
Bload "1.bmp", MyImage


'' And then, you can put that image on screen with the.. "put" command :D

'' 4) Draw the image on screen
Put (0,0),MyImage

Draw String(100,100),"This Is An Image Loader Test !"
Draw String(250,250),"And This Is The Text On Screen !"
Draw String(80,350),"Thank You Guys For All The help You're Giving Me With Coding !"
Draw String(0,1),"Y"
Draw String(0,20),"A"
Draw String(0,40),"Y"
Draw String(0,60),"!"
Draw String(0,80),"I"
Draw String(0,100),"t"
Draw String(0,120),"W"
Draw String(0,140),"o"
Draw String(0,160),"r"
Draw String(0,180),"k"
Draw String(0,200),"s"
Draw String(0,220),"!"

sleep

and another quick question, i tried to compile the code from this post http://www.dbfinteractive.com/forum/index.php/topic,3621.0.html (thanks Shockwave for sharing the code :clap:) , but it gives me this error.

Code: [Select]
error 24: File not found, "TINYPTC_EXT.BI" in '#INCLUDE "TINYPTC_EXT.BI"'

any idea where i can find TINYPTC_EXT.BI? ::)
« Last Edit: December 02, 2008 by bikerboy »


Offline Rbz

  • Founder Member
  • DBF Aficionado
  • ********
  • Posts: 2757
  • Karma: 493
    • View Profile
    • https://www.rbraz.com/
Re: Hello everyone :)
« Reply #13 on: December 02, 2008 »

Code: [Select]
error 24: File not found, "TINYPTC_EXT.BI" in '#INCLUDE "TINYPTC_EXT.BI"'

any idea where i can find TINYPTC_EXT.BI? ::)
@bikerboy: you can download tinyptc_ext from here -> http://www.dbfinteractive.com/forum/index.php?topic=1382.0 , any problems let me know :)
Challenge Trophies Won:

Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #14 on: December 02, 2008 »

Code: [Select]
error 24: File not found, "TINYPTC_EXT.BI" in '#INCLUDE "TINYPTC_EXT.BI"'

any idea where i can find TINYPTC_EXT.BI? ::)
@bikerboy: you can download tinyptc_ext from here -> http://www.dbfinteractive.com/forum/index.php?topic=1382.0 , any problems let me know :)


thanx man it no longer probuces that error :goodpost:

EDIT: i tried to load this code Shockwave made, to see what it does and study the code but i get those errors,


Code: [Select]
#define dbfcls redim as integer buffer (800*600)         
        #Include Once "tinyptc.bi"
       
        If( ptc_open( "Sine Scroll By Shockwave.", 800, 600 ) = 0 ) Then
        End -1
        End If
   
        option dynamic
        option explicit
       
        Dim Shared As Integer Buffer( 800 * 600 ) , lp
        dim shared kk as string
        dim shared gadd,gadd2 as integer
 
        declare sub DBFTEXT(BYVAL BX AS INTEGER , BYVAL BY AS INTEGER , BYVAL CH AS INTEGER , BYVAL CLR AS INTEGER)
        dim shared FONT (63 * 95) as integer
        FOR LP=1 TO (63*95)
                READ FONT(LP)
        NEXT               
        DECLARE SUB MESSAGE()
        DIM SHARED SCPTR AS INTEGER:' Letter Pointer In Scroll String.
        DIM SHARED SCROFF AS DOUBLE:' Offset Used To Scroll Text       
        Dim Shared scrolltext as string:' Holds Text.
        '=======================================================================
        'Our Text;
        '=======================================================================
        scrolltext="                                                                 "
        scrolltext=scrolltext+"                                                           "
        scrolltext=scrolltext+"                                     "
        scrolltext=scrolltext+"**** A SINESCROLL IN FREEBASIC ****    COOL!    THIS IS USING TINYPTC       "
        scrolltext=scrolltext+" ---------------------- JUST HACKED TOGETHER SO THAT NEWBIES CAN USE AND ABUSE IT IN THEIR OWN STUFF! "
        scrolltext=scrolltext+" ----------------------- "
        scrolltext=scrolltext+" Feel free to use it...           Coded by Shockwave ^ DBF "
        scrolltext=scrolltext+"   Tata...  "
        scrolltext=scrolltext+"                                     "
        scrolltext=scrolltext+"                                                           "
        SCROFF=0
        SCPTR=0

    DO       
        gadd=gadd+6
        gadd2=gadd2+3
        '**************************************
        ' Remove comment to wait for vblank ***
        '**************************************
       
        wait &H3DA,8
        kk=inkey$
        message()
        Ptc_update @buffer(0)
        dbfcls
    LOOP until kk=chr$(27)
   
    Ptc_Close()
   
SUB MESSAGE()
    dim hop,ecl,ch as integer
   
    HOP=0:' Used to jumpto next letter pos
   
   
    FOR LP=1 TO 101
       
       
        CH=(ASC(MID(SCROLlTEXT,LP+SCPTR,1)))-31:' Get Ascii for char
        '-----------------------------------------------------------------------
        ' Call DBF Custom Text Routine;
        '-----------------------------------------------------------------------
        DBFTEXT (HOP-scroff,296,CH,RGB(100,100,255))
        HOP=HOP+8
    NEXT
    '--------------------------------
    'Scroll And Update If Needed; ---
    '--------------------------------
    scroff=scroff+2
    if scroff> 8 then
        scptr=scptr+1
        if scptr>(len(scrolltext)-75) then scptr=0
        scroff=scroff-8
    end if
   
END SUB

       
sub DBFTEXT(BYVAL BX AS INTEGER , BYVAL BY AS INTEGER , BYVAL CH AS INTEGER , BYVAL CLR AS INTEGER)
dim blx,bly,bm,snval,snval2,mm as integer
IF CH<0 OR CH>95 THEN CH=1
    '---------------------------------
    'Calculate Offset In Font Data;---
    '---------------------------------
    bm=(ch*63)-63
    FOR BLY=0 TO 8
    FOR BLX=1 TO 7
        snval=20*COS((BLX+BX+GADD)/100)
        snval2=20*COS((BLX+BX+GADD2)/73)
        '--------
        'Clip;---
        '--------
        IF (BX+BLX>0) AND (BX+BLX<=799) AND (BY+BLY+snval+snval2>0) AND (BY+BLY+snval+snval2<599) THEN
           
            '----------------------------------------------------
            'Draw Pixel In Buffer If Onscreen And If Binary 1 ---
            '----------------------------------------------------
           
            MM= FONT(((BLY*7)+BLX)+BM)
            IF MM >0 THEN BUFFER (((BY+BLY+snval+snval2)*800)+BX+BLX)=CLR
        END IF
    NEXT
    NEXT
END SUB
'==============================================================================
' Binary Font By Shockwave / DBF; (95 Chars)
'==============================================================================

'space
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'!
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
'"
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'#
data 0,0,0,1,0,1,0
data 0,0,0,1,0,1,0
data 0,1,1,1,1,1,1
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 1,1,1,1,1,1,0
data 0,1,0,1,0,0,0
data 0,1,0,1,0,0,0

data 0,0,0,0,0,0,0
data 0,0,1,1,0,0,0
data 0,1,0,0,1,0,0
data 0,1,0,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,1,1,1,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,1,1,1,1,1

'%
data 0,1,0,0,0,0,0
data 1,0,1,0,0,0,1
data 0,1,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,1,0
data 1,0,0,0,1,0,1
data 0,0,0,0,0,1,0
'&
data 0,0,1,1,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,1,0,0,0,0
data 1,0,0,1,0,0,1
data 1,0,0,1,0,1,0
data 1,0,0,0,1,0,0
data 0,1,1,1,0,1,1
''
data 0,0,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'(
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,1,0,0

')
data 0,0,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0

'*
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,0,1,1,0
data 0,0,1,1,1,0,0
data 1,1,1,1,1,1,1
data 0,0,1,1,1,0,0
data 0,1,1,0,1,1,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'+
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 1,1,1,1,1,1,1
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
',
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,0,0
'-
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,1,1,1,1
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'.
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
'/
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,1
data 0,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,0,0
data 1,0,0,0,0,0,0
data 0,0,0,0,0,0,0

'0
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'1
data 0,0,0,1,0,0,0
data 0,1,1,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,1,1,1,1,1,0
'2
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,1,1,1,1,0
'3
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,1,1,0,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'4
data 0,0,0,0,1,0,0
data 0,0,0,1,1,0,0
data 0,0,0,1,1,0,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,1,0,0,1,0,0
data 0,1,1,1,1,1,0
data 0,0,0,0,1,0,0
data 0,0,0,1,1,1,0
'5
data 0,1,1,1,1,1,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,1,1,1,0,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'6
data 0,0,0,1,1,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'7
data 0,1,1,1,1,1,0
data 0,1,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
'8
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'9
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,1,1,0,0,0
':
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
';
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
'<
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,0,0
data 1,0,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
'=
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'>
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,0,1
data 0,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
'?
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,1,0,0,0
'@
data 0,0,1,1,1,1,0
data 0,1,0,0,0,0,1
data 1,0,0,1,1,0,1
data 1,0,1,0,1,0,1
data 1,0,1,0,1,0,1
data 1,0,1,0,1,0,1
data 1,0,0,1,1,1,0
data 0,1,0,0,0,0,0
data 0,0,1,1,1,0,0
'a
data 0,0,1,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,1,0,0,0,1,0
data 0,1,1,1,1,1,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1

'b
data 1,1,1,1,1,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,1,1,1,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 1,1,1,1,1,1,0
'c
data 0,0,1,1,1,1,0
data 0,1,0,0,0,0,1
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 0,1,0,0,0,0,1
data 0,0,1,1,1,1,0
'd
data 1,1,1,1,1,0,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,1,0
data 1,1,1,1,1,0,0
'e
data 1,1,1,1,1,1,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,0
data 0,1,0,0,1,0,0
data 0,1,1,1,1,0,0
data 0,1,0,0,1,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,1
data 1,1,1,1,1,1,1
'f
data 1,1,1,1,1,1,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,0
data 0,1,0,0,1,0,0
data 0,1,1,1,1,0,0
data 0,1,0,0,1,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 1,1,1,1,0,0,0
'g
data 0,0,1,1,1,1,0
data 0,1,0,0,0,0,1
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 1,0,0,0,1,1,1
data 1,0,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,0,1,1,1,1,0
'h
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,1,1,1,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1
'i
data 0,1,1,1,1,1,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,1,1,1,1,1,0
'j
data 0,0,0,0,1,1,1
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'k
data 1,1,1,0,0,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,1,0,0
data 0,1,0,0,1,0,0
data 0,1,0,1,0,0,0
data 0,1,1,1,0,0,0
data 0,1,0,0,1,0,0
data 0,1,0,0,0,1,0
data 1,1,1,0,0,1,1

'l
data 1,1,1,1,1,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,1
data 1,1,1,1,1,1,1
'm
data 1,1,0,0,0,1,1
data 0,1,0,0,0,1,0
data 0,1,1,0,1,1,0
data 0,1,1,0,1,1,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1
'n
data 1,1,0,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,1,0,0,1,0
data 0,1,1,0,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,0,1,1,0
data 0,1,0,0,1,1,0
data 0,1,0,0,0,1,0
data 1,1,1,0,0,1,0

'o
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0

'p
data 1,1,1,1,1,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,1,1,1,1,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 1,1,1,1,0,0,0

'q
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
data 0,0,1,1,0,1,1
'r
data 1,1,1,1,1,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,1,1,1,1,0
data 0,1,0,0,1,0,0
data 0,1,0,0,1,0,0
data 0,1,0,0,0,1,0
data 1,1,1,0,0,1,1
's
data 0,1,1,1,1,1,0
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 0,0,0,0,0,0,1
data 0,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 0,1,1,1,1,1,0
't
data 1,1,1,1,1,1,1
data 1,0,0,1,0,0,1
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,1,1,0,0
'u
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
'v
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
'w
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
'x
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1
'y
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,1,1,1,0,0
'z
data 1,1,1,1,1,1,1
data 1,0,0,0,0,1,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,0,1
data 1,1,1,1,1,1,1
'[
data 0,0,1,1,1,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,1,1,0,0
'\
data 0,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,0,1
data 0,0,0,0,0,0,0
']
data 0,0,1,1,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,1,1,1,0,0
'^
data 0,0,0,1,0,0,0
data 0,0,1,0,1,0,0
data 0,1,0,0,0,1,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'_
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,1,1,1,1
'`
data 0,0,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
'a
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,0,0
data 0,0,0,0,0,1,0
data 0,1,1,1,1,1,0
data 1,0,0,0,0,1,0
data 1,0,0,0,0,1,0
data 0,1,1,1,1,0,1
'b
data 1,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,1,1,1,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 1,1,1,1,1,1,0
'c
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,1
data 0,1,1,1,1,1,0
'd
data 0,0,0,0,1,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,0,1,0
data 0,1,1,1,1,1,0
data 1,0,0,0,0,1,0
data 1,0,0,0,0,1,0
data 1,0,0,0,0,1,0
data 1,0,0,0,0,1,0
data 0,1,1,1,1,1,1
'e
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 1,0,0,0,0,0,1
data 1,1,1,1,1,1,1
data 1,0,0,0,0,0,0
data 1,0,0,0,0,0,1
data 0,1,1,1,1,1,0
'f
data 0,0,0,1,1,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,1,1,1,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,1,1,1,0,0
'g
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,1
data 1,0,0,0,0,1,0
data 1,0,0,0,0,1,0
data 0,1,1,1,1,1,0
data 0,0,0,0,0,1,0
data 0,1,1,1,1,0,0
'h
data 1,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,1,1,0,0
data 0,1,1,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1
'i
data 0,0,0,1,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,1,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,1,1,1,1,1,0
'j
data 0,0,0,0,1,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,0,0,0,1,0,0
data 0,1,1,1,0,0,0
'k
data 1,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,0,0,0
data 0,1,0,0,1,1,0
data 0,1,0,0,1,0,0
data 0,1,0,1,0,0,0
data 0,1,1,1,0,0,0
data 0,1,0,0,1,0,0
data 1,1,0,0,0,1,1
'l
data 0,0,1,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,1,1,1,1,1,0
'm
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,0,1,0,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 1,1,0,1,0,1,1
'n
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,0,1,1,0,0
data 0,1,1,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1
'o
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 1,0,0,0,0,0,1
data 0,1,1,1,1,1,0
'p
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,1,1,1,0
data 0,1,0,0,0,0,1
data 0,1,0,0,0,0,1
data 0,1,1,1,1,1,0
data 0,1,0,0,0,0,0
data 1,1,1,0,0,0,0
'q
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,1
data 1,0,0,0,0,1,0
data 1,0,0,0,0,1,0
data 0,1,1,1,1,1,0
data 0,0,0,0,0,1,0
data 0,0,0,0,1,1,1
'r
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,0,1,1,0
data 0,0,1,1,0,0,1
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 1,1,1,1,1,0,0
's
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,1,1,1,1,1,0
data 1,0,0,0,0,0,1
data 0,1,1,1,0,0,0
data 0,0,0,0,1,1,0
data 1,0,0,0,0,0,1
data 0,1,1,1,1,1,0
't
data 0,0,0,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,1,1,1,1,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,0,0
data 0,0,1,0,0,1,0
data 0,0,0,1,1,0,0
'u
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,0,0,1,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,1,0,0,1,1,0
data 0,0,1,1,0,1,1
'v
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
data 0,0,0,1,0,0,0
'w
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,1,0,1,0
data 0,1,0,1,0,1,0
data 0,0,1,0,1,0,0
data 0,0,1,0,1,0,0
'x
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,0,1,1,1,0,0
data 0,0,1,1,1,0,0
data 0,1,0,0,0,1,0
data 1,1,1,0,1,1,1
'y
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,0,1,1,1
data 0,1,0,0,0,1,0
data 0,1,0,0,0,1,0
data 0,0,1,0,1,0,0
data 0,0,0,1,0,0,0
data 0,1,1,0,0,0,0
'z
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 1,1,1,1,1,1,0
data 1,0,0,0,1,0,0
data 0,0,0,1,0,0,0
data 0,0,1,0,0,0,0
data 0,1,0,0,0,1,0
data 1,1,1,1,1,1,0
'{
data 0,0,0,0,1,1,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,1,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,1,1,0
'|
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
'}
data 0,1,1,0,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,0,1,1,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,0,0,1,0,0,0
data 0,1,1,0,0,0,0
'~
data 0,0,0,0,0,0,0
data 0,1,1,0,0,0,1
data 1,0,0,1,0,0,1
data 1,0,0,0,1,1,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0
data 0,0,0,0,0,0,0

the errors i get are

Code: [Select]
Compiler output:
error 135: Only valid in -lang deprecated or fblite or qb, found 'option' in 'option dynamic'
error 135: Only valid in -lang deprecated or fblite or qb, found 'option' in 'option explicit'
error 136: Default types or suffixes are only valid in -lang deprecated or fblite or qb, found ',' in 'dim shared gadd,gadd2 as integer'
error 136: Default types or suffixes are only valid in -lang deprecated or fblite or qb, found ',' in 'dim hop,ecl,ch as integer'
error 136: Default types or suffixes are only valid in -lang deprecated or fblite or qb, found ',' in 'dim blx,bly,bm,snval,snval2,mm as integer'

Results:
Compilation failed

System:
FBIde: 0.4.6
fbc:   FreeBASIC Compiler - Version 0.20.0 (08-10-2008) for win32 (target:win32)
OS:    Windows XP (build 2600, Service Pack 3)
« Last Edit: December 02, 2008 by bikerboy »


Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #15 on: December 02, 2008 »
Well I guess this code may be a bit old for your freebasic compiler version :D

oh and congrats on your first bmp loader test :)


Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #16 on: December 02, 2008 »
Well I guess this code may be a bit old for your freebasic compiler version :D

oh and congrats on your first bmp loader test :)

oh that's why it's not working  ::)

thanx man couldn't have done it without your help ;D

now my goal is to make that text to move, no special effects or anything, just plain text moving from right to left ;D


Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #17 on: December 02, 2008 »
you're welcome, several people here helped me a lot (i mean really, a lot :P), i'm glad I can help my turn :)


For making the text to move it's really, really easy :)

When you write

Code: [Select]
Draw String (x,y), "what you wanna write here"
you can change this "x" value on each frame in a loop. An example :


Code: [Select]
Screenres 640,480,32,2   '' init

Dim as single xText   '' a variable to keep our x position

Do     '' Start of a loop. If you don't know it, look on fb's help, it's easy to understand :)
   
    Cls  '' clears the screen
   
    Draw String(xText,10),"Hello World !!"   '' draws the string ...

    xText+= 2   '' increment the value of xText

    Sleep 1,1  '' a little pause on each frame (try commenting it, you'll understand why it's needed :) )

Loop until xText>640     '' End of the previously started loop IF and ONLY IF x>640

After that, you can play with clipping against screen borders :)

Offline bikerboy

  • Amiga 1200
  • ****
  • Posts: 349
  • Karma: 12
    • View Profile
Re: Hello everyone :)
« Reply #18 on: December 02, 2008 »
works like a charm :goodpost: thanx again man ;D

a quick question, at this part of code ->Screenres 640,480,32,2

the 640,480 i know it's the resolution, the 32 and 2 what are those?

also how can i change the text position? from top to put it to the bottom of the screen and make it go from right to left.

thanx again man ;D

EDIT: i just tried to put the moving text to the one i did before with the image, it compiles and everything but there is no moving text, just the image and what i wrote before ::) (the static text)
« Last Edit: December 02, 2008 by bikerboy »


Offline Hezad

  • Sponsor
  • Pentium
  • *******
  • Posts: 613
  • Karma: 44
  • I believe .. in Patrick.
    • View Profile
    • Hezad.com Web hosting
Re: Hello everyone :)
« Reply #19 on: December 02, 2008 »
you're welcome :)

32 is the bits per pixel value and 2 is the number of workpages to work with. I'm not sure so wait for a confirmation but afaik, the bits per pixel value is the memory you'll have to store each pixel color. The workpages are useful to avoid flickering. I'm pretty sure they have a lot of other goals but I don't know them. The screen you're writing/drawing on is one workpage.

Quote
how can i change the text position? from top to put it to the bottom of the screen and make it go from right to left.

Well, to move the text from LEFT to RIGHT, we moved the x value of the text. So to move it from TOP to BOTTOM, what is the value you'll change ?

a clue :
Code: [Select]
Draw String(X,Y),"your text"
:)