Liberty BASIC Community Forum
« Search Results »

Welcome Guest. Please Login or Register.
Oct 24th, 2014, 11:48am


Rules|Home|Help|Search|Recent Posts|Notification

--Liberty BASIC Resources--
Yahoo Code Repository (source must be included)
Liberty BASIC Community WikiSpace
Liberty Labs
Bay Six Software Forum
Liberty BASIC Home Page

Official Liberty BASIC Support
Liberty BASIC Programmer's Encyclopedia
Liberty BASIC 5 Handbook
Liberty BASIC on Rosetta Code

Search Results

Total results: 10


 1   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 22nd, 2014, 09:06am
Started by jkmadsciftlog | Post by tenochtitlanuk
Fun to play with - I got some line following.

BUT I've concluded that rather than follow lines, with the attendant problems of deciding where to start, and at forks & loops, it is easier to just raster-scan the mechanical CNC cutting tool & raise/lower it at appropriate places. Just use a drill/router which drills holes a little bigger than each x/y step, so they link up!

This also allows non-continuous paths, although the material being cut may need to be lightly glue-tacked down so isolated pieces don't move until the job is finished....

Must try, modifying one of my eggbots! Replace the egg with a wax (?) cylinder, and replace the felt-tip pen with a mini drill....
 
  Reply Quote Notify of replies

 2   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 22nd, 2014, 07:50am
Started by jkmadsciftlog | Post by jkmadsciftlog
Sorry I did send you the wrong bmp file I can see the bits now Thankyou again
 
  Reply Quote Notify of replies

 3   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 22nd, 2014, 05:08am
Started by jkmadsciftlog | Post by Rod
Sticking with the monochrome bmp this is how I changed my first set of code to read the bmp. Each line is stored in four bytes, its a rule that a bmp line must be a multiple of four bytes. Only the first two bytes contain pixel info. All 8 bits of the first byte and the first two bits of the second byte. The rest is padding.


Remember it list the image upside down.


Code:
' a bmp header is 54 bytes long 14 for the file header
' and 40 for the bmp info. If it is less then 24bit
' color it will have a color table.


filedialog "Open bmp file", "*.bmp", fileName$
open fileName$ for input as #bmp
'the bmpfileheader (always 14 bytes)
bmp$ = Input$(#bmp,lof(#bmp))
print "bfType      =";mid$(bmp$,1,2)           'always BM
print "bfSize      =";value(mid$(bmp$,3,4))
print "bfReserved  =";value(mid$(bmp$,7,2))
print "bfReserved  =";value(mid$(bmp$,9,2))
print "bfOffBits   =";value(mid$(bmp$,11,4))   'this defines where the pixel info starts
'the bitmapinfo (always 40 bytes)
print "biSize      =";value(mid$(bmp$,15,4))
print "biWidth     =";value(mid$(bmp$,19,4))
print "biHeight    =";value(mid$(bmp$,23,4))
print "biPlanes    =";value(mid$(bmp$,27,2))
print "biBitCount  =";value(mid$(bmp$,29,2))   'this defines how many bits represent a pixel
print "biCompress  =";value(mid$(bmp$,31,4))
print "biSizeImage =";value(mid$(bmp$,35,4))
print "biXPels     =";value(mid$(bmp$,39,4))
print "biYPels     =";value(mid$(bmp$,43,4))
print "biClrUsed   =";value(mid$(bmp$,47,4))
print "biClrImport =";value(mid$(bmp$,51,4))
'the pallete info from 55 to bfOffBits
print "Pallete bytes = ";value(mid$(bmp$,11,4))-54
'there will be two color quads in a monochrome bmp usually 0,0,0,0 and 255,255,255,0
l=4
for c=55 to value(mid$(bmp$,11,4))
    if l=4 then print : print "Byte ";c;" "; : l=0
    print asc(mid$(bmp$,c,1));",";
    l=l+1
next
print
'the pixel info starts at bfOffBits+1 and ends at bfSize
'so we have 40 bytes, since we have 10 lines we must use 4 bytes per line
'pixels are 1 bit so each byte contains 8 pixel values, off or on 1 or 0
'so the first ten bits contain the image the rest is padding ie first two bytes contain data second two are padding
p=value(mid$(bmp$,11,4))+1
for n=1 to value(mid$(bmp$,23,4)) 'biHeight
    print "Byte ";p;" ";
    v=asc(mid$(bmp$,p,1)) 'first byte
    v2=asc(mid$(bmp$,p+1,1))'second byte
    'pixel image data is packed into 8bits so we need to unpack them
    'we do this by ANDing them
    print (v and 128) >0;","; 'is the 8th bit set
    print (v and 64) >0;",";
    print (v and 32) >0;",";
    print (v and 16) >0;",";
    print (v and 8) >0;",";
    print (v and 4) >0;",";
    print (v and 2) >0;",";
    print (v and 1) >0;","; 'is the first bit set
    print (v2 and 128) >0;",";
    print (v2 and 64) >0
    p=p+4
next
wait


function value(x$)
    select case len(x$)
        case 1
        value = asc(x$)
        case 2
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        case 3
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        value=value+(asc(mid$(x$,3,1))*65536)
        case 4
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        value=value+(asc(mid$(x$,3,1))*65536)
        value=value+(asc(mid$(x$,4,1))*16777216)
    end select
end function





 

 
  Reply Quote Notify of replies

 4   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 22nd, 2014, 02:30am
Started by jkmadsciftlog | Post by Rod
No, you changed the bmp file structure. The one you sent me had a sixteen color pallette and 4 bits per pixel. That's what my code was set to interpret. You are now using a true monochrome format with only two colors and 1 bit per pixel. So 1 byte holds 8 pixels.

Look at the bibitcount value, that tells you how many bits represents a pixel in the bmp format you have open.

Just take your time, browse what has been said it will make sense soon enough.

For a full lesson on bmp format check out .bmp on wotsit.org
http://www.wotsit.org/download.asp?f=bmp&sc=467252951
 
  Reply Quote Notify of replies

 5   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 21st, 2014, 9:17pm
Started by jkmadsciftlog | Post by jkmadsciftlog
Ok i finally see the pattern i have lots of analyzing to do
Thank you again each byte = 4 pixels, and there are extra zeros



Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 71 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 79 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 87 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 95 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 10 by 10 black mono bmp


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 71 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 79 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 87 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 95 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,10 by 10 white mono bmp


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 71 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 79 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 87 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 95 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, one white pixel bottom left


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 8,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,
Byte 71 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 2 white pixels
Byte 79 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 87 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 95 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 8,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,
Byte 71 8,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,
Byte 79 8,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,
Byte 87 8,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0,
Byte 95 8,0,0,0,0,0,0,0,8,0,0,0,0,0,0,0, white stripe far left


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,
Byte 71 12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,
Byte 79 12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,2 white stripes far left
Byte 87 12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,
Byte 95 12,0,0,0,0,0,0,0,12,0,0,0,0,0,0,0,


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 14,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,
Byte 71 14,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,
Byte 79 14,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0, 3 white stripes far left
Byte 87 14,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,
Byte 95 14,0,0,0,0,0,0,0,14,0,0,0,0,0,0,0,


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 15,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0, 4 white stripes
Byte 71 15,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,
Byte 79 15,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,
Byte 87 15,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,
Byte 95 15,0,0,0,0,0,0,0,15,0,0,0,0,0,0,0,


Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 15,8,0,0,0,0,0,0,15,8,0,0,0,0,0,0,
Byte 71 15,8,0,0,0,0,0,0,15,8,0,0,0,0,0,0, 5 white stripes
Byte 79 15,8,0,0,0,0,0,0,15,8,0,0,0,0,0,0,
Byte 87 15,8,0,0,0,0,0,0,15,8,0,0,0,0,0,0,
Byte 95 15,8,0,0,0,0,0,0,15,8,0,0,0,0,0,0,





 
  Reply Quote Notify of replies

 6   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 21st, 2014, 8:22pm
Started by jkmadsciftlog | Post by jkmadsciftlog




bfType =BM
bfSize =102
bfReserved =0
bfReserved =0
bfOffBits =62
biSize =40
biWidth =10
biHight =10
biPlanes =1
biBitCount =1
biCompress =0
biSizeImage =40
biXPels =0
biYPels =0
biClrUsed =0
biClrImport =0
Pallete bytes = 8

Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 71 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 79 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 87 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
Byte 95 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 10 by 10 black mono bmp

bfType =BM
bfSize =102
bfReserved =0
bfReserved =0
bfOffBits =62
biSize =40
biWidth =10
biHight =10
biPlanes =1
biBitCount =1
biCompress =0
biSizeImage =40
biXPels =0
biYPels =0
biClrUsed =0
biClrImport =0
Pallete bytes = 8

Byte 55 0,0,0,0,
Byte 59 255,255,255,0,
Byte 63 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 71 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 79 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 87 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,
Byte 95 15,15,12,0,0,0,0,0,15,15,12,0,0,0,0,0,10 by 10 white mono bmp

I am not seeing the 100 pixels I see 30 bytes that are different from one output to another I will study your code
so that i can better understand what i am looking at

my test file was created in paintbrush using black and white
format 10 by 10 pixels am i doing somthing wrong?

I really appreciate the help




 
  Reply Quote Notify of replies

 7   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 21st, 2014, 08:35am
Started by jkmadsciftlog | Post by Rod
I played with a 24bit bmp and tried to follow the line! Not succeeding so far but folks might like the challenge. Get the program to output the cnc cutting step directions:)

I'm out of time today.

User Image


Code:
 'open a window
    nomainwin
    WindowWidth = 1200
    WindowHeight = 600
    UpperLeftX = int((DisplayWidth-WindowWidth)/2)
    UpperLeftY = int((DisplayHeight-WindowHeight)/2)
    graphicbox #cnc.gb1, 20, 20, 500, 500
    graphicbox #cnc.gb2, 530, 20, 500, 500
    textbox #cnc.tb, 1040, 60, 100, 25
    open "Simple CNC" for window as #cnc
    print #cnc, "trapclose [quit]"



    open "cutting.bmp" for input as #bmp
    bmp$ = Input$(#bmp,lof(#bmp))
    close #bmp
    bfOffBits=value(mid$(bmp$,11,4))+1
    biWidth=value(mid$(bmp$,19,4))
    biHeight=value(mid$(bmp$,23,4))
    biBitCount=value(mid$(bmp$,29,2))
    if biBitCount<>24 then [quit]

    loadbmp "cnc","cutting.bmp"
    #cnc.gb1 "down ; drawbmp cnc 0 0"
    #cnc.gb2 "down ; drawbmp cnc 0 0"
    #cnc.gb2 "down ; color red"

    'find top left of cutting line
    x=0
    y=0
    while 1
        'there are three bytes for every pixel
        'biWidth * 3 bytes per scan line
        'we only care if the first byte is 0 black
        'not 255 white
        inverty=biHeight-1-y
        if mid$(bmp$,x*3+inverty*biWidth*3+bfOffBits,1)=chr$(0) then exit while
        x=x+1
        if x>biWidth then x=0 : y=y+1
        if y>biHeight then exit while
    wend
    #cnc.gb2 "set ";x;" ";y
    startx=x
    starty=y


    'now follow the line in one of 8 different directions
    'but dont allow to retrace step
    while 1
        scan
        inverty=biHeight-1-y
        if mid$(bmp$,(x+1)*3+inverty*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x+1 and oldy=y) then x=x+1 : goto [done]
        if mid$(bmp$,(x+1)*3+(inverty-1)*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x+1 and oldy=y+1) then x=x+1 : y=y+1 : goto [done]
        if mid$(bmp$,(x+1)*3+(inverty+1)*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x+1 and oldy=y-1) then x=x+1 : y=y-1 : goto [done]
        if mid$(bmp$,x*3+(inverty-1)*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x and oldy=y+1) then y=y+1 : goto [done]
        if mid$(bmp$,x*3+(inverty+1)*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x and oldy=y-1) then y=y-1 : goto [done]
        if mid$(bmp$,(x-1)*3+(inverty-1)*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x+1 and oldy=y+1) then x=x+1 : y=y+1 : goto [done]
        if mid$(bmp$,(x-1)*3+(inverty+1)*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x+1 and oldy=y-1) then x=x+1 : y=y-1 : goto [done]
        if mid$(bmp$,(x-1)*3+inverty*biWidth*3+bfOffBits,1)=chr$(0) and not(oldx=x-1 and oldy=y) then x=x-1
        [done]
        #cnc.gb2 "set ";x;" ";y
        oldx=x
        oldy=y
        if x=startx and y=starty then exit while
    wend
wait

[quit]
close #cnc
end

function value(x$)
    select case len(x$)
        case 1
        value = asc(x$)
        case 2
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        case 3
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        value=value+(asc(mid$(x$,3,1))*65536)
        case 4
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        value=value+(asc(mid$(x$,3,1))*65536)
        value=value+(asc(mid$(x$,4,1))*16777216)
    end select
end function



 

 
  Reply Quote Notify of replies

 8   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 21st, 2014, 08:11am
Started by jkmadsciftlog | Post by jkmadsciftlog
I don't have time to look at the responses yet, but I really do appreciate the help Some days its work first and programming second
 
  Reply Quote Notify of replies

 9   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 21st, 2014, 05:02am
Started by jkmadsciftlog | Post by Rod
Right sorry to take so long to upload the bmp. Its certainly not monochrome :)

This is the original bmp User Image

This is an image I tweaked to put some color in so we can see how the pixel data is arranged User Image

I used PSP so the header info is slightly different to the original but the pallete and pixel format are the same.

This is the code I used to interpret the file.

Code:
' a bmp header is 54 bytes long 14 for the file header
' and 40 for the bmp info. If it is less then 24bit
' color it will have a color table.
' a 256 color file has 256 4 byte colors in a table
' following the headers

filedialog "Open bmp file", "*.bmp", fileName$
open fileName$ for input as #bmp
'the bmpfileheader (always 14 bytes)
bmp$ = Input$(#bmp,lof(#bmp))
print "bfType      =";mid$(bmp$,1,2)           'always BM
print "bfSize      =";value(mid$(bmp$,3,4))
print "bfReserved  =";value(mid$(bmp$,7,2))
print "bfReserved  =";value(mid$(bmp$,9,2))
print "bfOffBits   =";value(mid$(bmp$,11,4))   'this defines where the pixel info starts
'the bitmapinfo (always 40 bytes)
print "biSize      =";value(mid$(bmp$,15,4))
print "biWidth     =";value(mid$(bmp$,19,4))
print "biHight     =";value(mid$(bmp$,23,4))
print "biPlanes    =";value(mid$(bmp$,27,2))
print "biBitCount  =";value(mid$(bmp$,29,2))
print "biCompress  =";value(mid$(bmp$,31,4))
print "biSizeImage =";value(mid$(bmp$,35,4))
print "biXPels     =";value(mid$(bmp$,39,4))
print "biYPels     =";value(mid$(bmp$,43,4))
print "biClrUsed   =";value(mid$(bmp$,47,4))
print "biClrImport =";value(mid$(bmp$,51,4))
'the pallete info from 55 to bfOffBits
print "Pallete bytes = ";value(mid$(bmp$,11,4))-54
'the pallete seems to be 16 color quads
l=4
for c=55 to value(mid$(bmp$,11,4))
    if l=4 then print : print "Byte ";c;" "; : l=0
    print asc(mid$(bmp$,c,1));",";
    l=l+1
next

'the pixel info starts at bfOffBits+1 and ends at bfSize
'so we have 80 bytes, since we have 10 lines we must use 8 bytes per line
'pixels are 4bit so each byte contains two pixel values
'16 values but we only need 10 per line so 6 must be padding
l=8 '8 bytes, 16 values
for p=value(mid$(bmp$,11,4))+1 to value(mid$(bmp$,3,4))
    if l=8 then print : print "Byte ";p;" "; : l=0
    v=asc(mid$(bmp$,p,1))
    'pixel image data is packed into 4bits so we need to unpack them
    'we do this by dividing the byte by 16 to get high and low components
    high= int(v/16)
    low = v-high*16
    print high;",";low;",";
    l=l+1
next
wait


function value(x$)
    select case len(x$)
        case 1
        value = asc(x$)
        case 2
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        case 3
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        value=value+(asc(mid$(x$,3,1))*65536)
        case 4
        value=asc(mid$(x$,1,1))
        value=value+(asc(mid$(x$,2,1))*256)
        value=value+(asc(mid$(x$,3,1))*65536)
        value=value+(asc(mid$(x$,4,1))*16777216)
    end select
end function


 


I have to say that you could make the whole project a lot easier if you could obtain a more simply structured bmp.

But hey anything can be done. If you grab my image and run my code you will see that the color data is displayed for each pixel.

Its a real messy format given the padding and packing of the info. A standard 24bit image might be a lot simpler to interpret.

So have a play and lets see whats next.

edit to add: note that the list I create is upside down, the last line is listed first, the one with the white pixel, color value 15. That's how bmps are stored on disc.
 
  Reply Quote Notify of replies

 10   Liberty BASIC Code / Re: I would like help writing a program that reads  on: Oct 21st, 2014, 04:56am
Started by jkmadsciftlog | Post by tenochtitlanuk
I remembered you'd put this up before. Thanks Anatoly!

Looks like my image was actually in a colour format but set to grey scale, ie R=G=B

Anyway, for future reference the code I used might be useful too...
Code:
    '   Note that the bitmap data starts with the lower left hand corner of the image.
    '   Each row in the Pixel Array is padded to a multiple of 4 bytes in size

    '   In this *** 24bpp format *** data starts at location 55

    open "monoX.bmp" for input as #pic
        all$        =input$( #pic, lof( #pic))
    close #pic

    bmpwidth    =asc( mid$( all$, 19, 1)) + ( asc( mid$( all$, 20, 1)) * 256)
    bmpheight   =asc( mid$( all$, 23, 1)) + ( asc( mid$( all$, 24, 1)) * 256)
    print "  Bitmap width is "; bmpwidth; " & height is "; bmpheight: print ""

    ' So each of 10 rows will be 10 triplets +2 padding, ie 32 characters.

    for y =0 to bmpheight -1
        row$ =mid$( all$, 55 +y *32, 32)

        print "   ";

        for x =0 to bmpwidth -1
            BGR$         =mid$( row$, 1 +3 *x, 3)
            ave$         =disp$( BGR$)
            print ave$; "  ";
            scan
        next x

        print "": print ""

    next y

    end

    function disp$( i$) '   averages three colour pixels and formats to string form
                        '       of course in this particular form I was using R=G=B
        v       =0
        for j =1 to 3
            v =v +asc( mid$( i$, j, 1))
        next j
        inty    =int( v /3)
        disp$   ="x" +right$( "00" +dechex$( inty), 2)
    end function
 

Which produced
Quote:
Bitmap width is 10 & height is 10

xFF x00 x00 x00 x00 x00 x00 x00 x00 xFF

x00 xFF x00 x00 x00 x00 x00 x00 xFF x00

x00 x00 xFF x00 x00 x00 x00 xFF x00 x00

x00 x00 x00 xFF x00 x00 xFF x00 x00 x00

x00 x00 x00 x00 xFF xFF x00 x00 x00 x00

x00 x00 x00 x00 xFF xFF x00 x00 x00 x00

x00 x00 x00 xFF x00 x00 xFF x00 x00 x00

x00 x00 xFF x00 x00 x00 x00 xFF x00 x00

x00 xFF x00 x00 x00 x00 x00 x00 xFF x00

xFF x00 x00 x00 x00 x00 x00 x00 x00 xFF


 
  Reply Quote Notify of replies


Rules|Home|Help|Search|Recent Posts|Notification



Donate $6.99 for 50,000 Ad-Free Pageviews!

| |

This forum powered for FREE by Conforums ©
Sign up for your own Free Message Board today!
Terms of Service | Privacy Policy | Conforums Support | Parental Controls