Date: 02-16-2022
Return to Index
created by gbSnippets
'Sometimes an application requires only a single image (icon or bmp). And while it is
'not difficult to use image files (*.ico, *.bmp) or resource files (*.pbr), it can be
'a little more convenient to avoid their use when only 1-2 images are needed.
'In PowerBASIC an image can be converted to a bit string, modified, and then returned
'to a graphic target for display. This snippet converts a bit string to DATA statements
'as part of a complete Function that can be inserted into a PowerBASIC application.
'The Function that is placed in your application will return the recreated bit string
'of the image, which can then be loaded into any of the three graphic targets.
'Here's an example of the string Function that this snippet creates - in this case
'for a 2x2 Image:
Function BitString() As String
'bit string for: aainfo 2x2
Local bmp$, i As Long
Data 000002, 000002, 000080, 000080, 000080, 000080
For i = 1 to Datacount
bmp$ = bmp$ + Mkl$(Val("&H"+Read$(i)))
Next i
Function = bmp$
End Function
'When called, this Function returns a bit string that be used with Graphic Set Bits to load
'the image into a graphic target (Graphic Control, Graphic Window or Graphic Memory Bitmap.
'Because PowerBASIC has a limitation of 64K bytes and 16K DATA strings in a procedure,
'the snippet will only work on images sizes up to 90x90 pixels. I'll release a way
'to work around the 90x90 size limits (by creating multiple Functions) in a later release.
'Primary Code:
'The CreateDATAStatements function is the heart of of the snippet. It's output is a Function
'which contains contains the DATA statements and code needed to re-create the bit string.
Sub CreateDATAStatements
Local temp$, i As Long, j As Long, xsize&, ysize&
Local iCount as Long, P as Long PTR, iWidth&, iOverSize&
Graphic Attach hDlg, %ID_Graphic
Graphic Get Bits To bmp$
P = StrPTR(bmp$)
xsize& = CVL(bmp$,1) : ysize& = CVL(bmp$,5)
temp$ = "Function BitString() As String"
temp$ = temp$ + $CrLf + " 'bit string for: " + imgName$ + " "+ Str$(xsize&) + "x" + LTrim$(Str$(ysize&))
temp$ = temp$ + $crlf + " Local bmp$, i As Long"
For i = 0 to (xsize& * ysize& - 1)
temp$ = temp$ + IIF$(i Mod 30, ", ", $crlf + " DATA ") + Hex$(@P,6)
Incr P
Next i
temp$ = temp$ + $CrLf + " For i = 1 to DataCount"
temp$ = temp$ + $CrLf + " bmp$ = bmp$ + Mkl$(Val("+Chr$(34)+"&H"+Chr$(34)+"+Read$(i)))"
temp$ = temp$ + $CrLf + " Next i"
temp$ = temp$ + $CrLf + " Function = bmp$" + $CrLf + "End Function"
Control Set Text hDlg, %ID_Data, temp$
Clipboard Reset : Clipboard Set Text temp$ 'put result on clipboard
End Sub
'Compilable Example: (Jose Includes)
'This example displays a resource icon. Pressing the button generates the
'DATA statements and uses them to load the image into a second graphic control.
'The output Function, with DATA statements, has been pre-loaded into this example.
'The technique for converting a bitmap is identical. To modify this example to
'show a bitmap, just uncomment the 3 lines 'ending with '*** BITMAP.
#Compiler PBWin 9, PBWin 10
#Compile EXE
#Dim All
%Unicode=1
#Include "Win32API.inc"
#Resource "gbsnippets.pbr"
Global hDlg As DWord, bmp$, hLst As DWord
Function PBMain() As Long
Local style&, h As Long, w as Long
h = 16 : w = 16
' h = 40 : w = 40 '*** BITMAP
style& = %WS_Child Or %WS_Visible Or %ES_MultiLine Or %WS_VScroll Or %ES_AutoHScroll _
Or %WS_HScroll Or %ES_AutoVScroll Or %ES_WantReturn Or %WS_TabStop
Dialog New Pixels, 0, "Test Code",300,300,600,370, %WS_OverlappedWindow To hDlg
Control Add Button, hDlg, 100,"Create DATA", 50,10,100,20
Control Add Graphic, hDlg, 200,"Push", 170,10,w,h
Control Add TextBox, hDlg, 300,"<DATA>", 10,60,580,250, Style&
Control Add Button, hDlg, 400,"Use DATA", 50,320,100,20
Control Add Graphic, hDlg, 500,"Push", 170,320,w,h
LoadResourceIcon
' LoadResourceBitmap '*** BITMAP
Dialog Show Modal hDlg Call DlgProc
End Function
CallBack Function DlgProc() As Long
If CB.Msg = %WM_Command AND CB.Ctl = 100 AND CB.Ctlmsg = %BN_Clicked Then
CreateDataStatements
End If
If CB.Msg = %WM_Command AND CB.Ctl = 400 AND CB.Ctlmsg = %BN_Clicked Then
LoadImageFromDataStatements
End If
End Function
Sub LoadResourceICon
ImageList New Icon 16,16,1,900 To hLst 'create icon imagelist
ImageList Add Icon hLst, "rocket" 'just a single icon in the imagelist
Graphic Attach hDlg, 200
Graphic ImageList (0,0), hLst, 1,0,%ILD_Normal 'copy the icon to the Graphic control
End Sub
Sub LoadResourceBitmap
Graphic Attach hDlg, 200
Graphic Render "cowgirl", (0,0)-(40,40) 'copy the bitmap to the Graphic control - 90x90 max
End Sub
Sub LoadImageFromDataStatements
Graphic Attach hDlg, 500
Graphic Clear
Graphic Set Bits BitstringIcon
' Graphic Set Bits BitstringBitMap '*** BITMAP
End Sub
Sub CreateDATAStatements
Local temp$, i As Long, j As Long, xsize&, ysize&
Local iCount As Long, P As Long Ptr, iWidth&, iOverSize&
Graphic Attach hDlg, 200
Graphic Get Bits To bmp$
P = StrPTR(bmp$)
xsize& = CVL(bmp$,1) : ysize& = CVL(bmp$,5)
temp$ = "Function BitString() As String"
temp$ = temp$ + $CrLf + " 'bit string for: " + "rocket" + " "+ Str$(xsize&) + "x" + LTrim$(Str$(ysize&))
temp$ = temp$ + $CrLf + " Local bmp$, i As Long"
For i = 0 To (xsize& * ysize& + 1)
temp$ = temp$ + IIF$(i Mod 30, ", ", $CrLf + " DATA ") + Hex$(@P,6)
Incr P
Next i
temp$ = temp$ + $CrLf + " For i = 1 to DataCount"
temp$ = temp$ + $CrLf + " bmp$ = bmp$ + Mkl$(Val("+Chr$(34)+"&H"+Chr$(34)+"+Read$(i)))"
temp$ = temp$ + $CrLf + " Next i"
temp$ = temp$ + $CrLf + " Function = bmp$" + $CrLf + "End Function"
Control Set Text hDlg, 300, temp$
End Sub
Function BitStringIcon() As String
'bit string for: rocket 16x16
Local bmp$, i As Long
Data 000010, 000010, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, 000000, 800000, 000000, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, 000000, 800000, 000000, 800000, 800000, 000000, ECE9D8
Data ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, ECE9D8, 000000, 000000, ECE9D8, 800000, 000000, FFFFFF, FFFFFF, 800000, 000000, ECE9D8, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, 808080, 000000, 800000, FFFFFF, 0000FF, 0000FF, 000000
Data 800000, 000000, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, 808080, 000000, 000000, C0C0C0, FFFFFF, FFFFFF, 808080, 800000, 000000, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, 808080, 800000, 000000, C0C0C0, FFFFFF
Data FFFFFF, 808080, 800000, 000000, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, 808080, 800000, 000000, C0C0C0, FFFFFF, FFFFFF, 808080, 800000, 000000, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, 808080, 800000, 000000
Data C0C0C0, FFFFFF, FFFFFF, 808080, 000000, 000000, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, 808080, C0C0C0, 000000, C0C0C0, FFFFFF, FFFFFF, 808080, FFFFFF, 000000, C0C0C0, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, FFFFFF, C0C0C0
Data FFFFFF, 000000, C0C0C0, FFFFFF, FFFFFF, 808080, FFFFFF, FFFFFF, 000000, 000000, ECE9D8, ECE9D8, ECE9D8, ECE9D8, C0C0C0, FFFFFF, FFFFFF, 000000, C0C0C0, FFFFFF, FFFFFF, 808080, FFFFFF, FFFFFF, FFFFFF, 000000, ECE9D8, ECE9D8, ECE9D8, C0C0C0
Data FFFFFF, FFFFFF, FFFFFF, 000000, C0C0C0, C0C0C0, FFFFFF, 808080, FFFFFF, FFFFFF, FFFFFF, FFFFFF, 000000, ECE9D8, 000000, C0C0C0, C0C0C0, C0C0C0, C0C0C0, 000000, C0C0C0, 808080, FFFFFF, 808080, C0C0C0, C0C0C0, C0C0C0, C0C0C0, 808080, 000000
Data 000000, 000000, 000000, 000000, 000000, 000000, 000000, 808080, 000000, 000000, 000000, 000000, 000000, 000000, 000000, 000000, ECE9D8, ECE9D8, 000000, 000000, 000000, ECE9D8, 000000, 808080, C0C0C0, 000000, ECE9D8, 000000, C0C0C0, 000000
Data ECE9D8, ECE9D8, ECE9D8, ECE9D8, 000000, 000000, 000000, ECE9D8, 000000, 000000, 000000, 000000, ECE9D8, 000000, 000000, 000000, ECE9D8, ECE9D8
For i = 1 To Datacount
bmp$ = bmp$ + Mkl$(Val("&H"+Read$(i)))
Next i
Function = bmp$
End Function
Function BitStringBitmap() As String
'bit string for: rocket 40x40
Local bmp$, i As Long
Data 000028, 000028, 361012, 381318, 391B19, 2B1913, 5B6053, 5B5D4F, 5C5E50, 5D5E50, 5E5F51, 606353, 4A4640, 70685C, 726A5F, 706054, 736861, 716A5A, 746A61, 726660, 746C62, 736C61, 746D5D, 77695B, 786962, 726B61, 726C60, 746C61, 716B60, 726D60
Data 736B60, 726961, 726B5F, 72695E, 716A5F, 726B5F, 72685F, 70685F, 6E675E, 6F685E, 6C675A, 6D665C, 311924, 311823, 30191A, 3B2427, 5F5E52, 5E5F4E, 5E5F4F, 5D5F50, 5E6052, 626453, 48473D, 73685A, 726960, 6C6459, 776752, 806343, A17441, 986B3C
Data 9D7A59, 86715C, 776B62, 776E65, 746E61, 766E64, 756D61, 756C63, 746E62, 766C62, 766C62, 746B61, 746B62, 726B61, 726B5F, 726A5F, 716B5F, 706A5E, 706B5D, 6F695D, 6F695D, 6D675C, 636564, 666262, 351E1B, 3B2629, 5D6154, 5E604F, 60614D, 5B634E
Data 5D6053, 616654, 494337, 937650, B48353, B98545, B27F3E, AD783D, B58555, BB946C, BB926C, B58F6C, A17B4F, 9D784D, 827158, 746C60, 766B61, 766D60, 746E61, 756D61, 756D61, 736D61, 766C60, 746A61, 726C60, 736C60, 716B5F, 716B5F, 6E6B60, 716B5F
Data 6F685A, 6D695D, 342B23, 656867, 391D19, 3B2124, 5F6053, 5C5E50, 5E6151, 5E614C, 5C6254, 6D5C3C, 9E7337, B57A44, B5844C, AD753F, AD7E4A, AC8155, C1A181, B89C7F, C7A586, C09B78, BD9773, B18C65, 97754F, 806B55, 756C5F, 746B5F, 736C5F, 736B5B
Data 736B60, 726B61, 74695D, 73695F, 71695C, 71695D, 716A5E, 70695E, 706A5D, 716A5D, 6F675C, 6F695B, 282724, 656666, 3B201B, 3F2624, 606252, 5E5F4E, 5F6050, 5E6450, 705937, B98241, BD7F3E, B68249, AC7A48, B1875B, B28D69, B3936D, B99A76, BA9A75
Data CFAC90, C5A381, C5A181, C2A084, B38F6F, A07D56, 897057, 776C60, 746D60, 756C60, 736B5F, 726C5F, 756B5E, 736A60, 73695D, 73695C, 726A5E, 70685C, 706A5A, 726A5C, 6F665C, 6F685B, 27201F, 686665, 35211B, 371E1B, 626051, 5C6253, 61604C, 976025
Data AA6B29, A97038, AF8051, B48E68, B79572, B99A7B, B59779, B09071, C6A37E, CDA685, D3B292, D2B190, CBAF93, C4A788, C2A180, B6936F, B38F6A, 9B8162, 776956, 746A5E, 746A5E, 746A5E, 706C5D, 72695F, 716657, 836747, 997044, 9A6E3E, A27D55, 826E4E
Data 726459, 6D685C, 51484B, 676765, 3F2823, 3B1E1C, 646153, 626150, 875F35, B27B3E, AD7C48, BA9674, BA997B, BC9B7B, B99A7A, B49576, B69878, B59577, D9BA9A, CFB090, CEAB8B, C9A784, D0AF90, D0B094, D4B699, C19B7B, B38F6C, B7946D, 97795C, 736C5D
Data 726B5D, 736B60, 736B60, 8C6E4C, 976125, 9E682E, 9C6930, A66F38, A66F2D, 9E631E, AF8558, 6F675D, 382D30, 686966, 3E2523, 432528, 626254, 825E37, BA814E, C1976E, C3A381, B99D7F, BCA385, BE9F84, C1A389, BE9E7D, AF7C43, 9A631E, BD8343, BC8546
Data D2AA7F, D3AE97, D2B191, D2B18E, E3C19F, CCA789, CEA683, B78D63, A67845, 7C603C, 726C5F, 76685B, A27549, AA7241, A8723A, B07D44, AD753E, AC7A44, AE773D, A3672D, 976026, 8C6F49, 52383C, 666764, 3D2520, 442224, 636454, A67C4A, B58D62, C19F7F
Data BD9F80, C3A483, C2A283, C1A586, C8AA87, 9D7641, A1682E, C08944, C38A52, D59969, C3854A, BD8D50, E0C2A2, D8B796, C7A480, D7A784, D8A986, 382416, 432F1C, 906E51, 736959, 91724B, A56D38, A36C34, B07C47, B68450, B4824F, BA8C5B, A87541, 99612A
Data 9C662C, AD7F44, 4F141B, 646B69, 442726, 411C20, 615F4A, AD855D, BF9F7C, C4A17C, C09F7C, B38E6C, C09E79, D9B792, 8C5C27, C5915D, C48C63, D8A67E, D7A774, D29E6C, BE8851, B67E4A, AC763D, D69A6F, AF8059, 9B8264, 94815A, A98E69, 907957, 8C7057
Data 8E785D, 7D6146, B28A63, B18C68, B9926E, B28C64, A77D52, AB8057, 946536, 93612B, 905923, 9E7034, 531320, 6A6867, 41231E, 422023, 686049, AB8868, B09475, C7A581, BF9D79, C6A488, D3B291, 9C733C, BE8C5C, B68754, CBA679, D7AF8A, D6A583, C2946A
Data B48355, AF7F52, A5754C, 895F37, B67E4A, B37D41, AE7B43, A9773C, B38149, 9E6A37, 9A6831, AE7843, B3814C, AB7B46, 9A6C3B, A27441, 9D6D37, 9A6938, 905D24, 966027, 935820, 8B5935, 686767, 666663, 3C2620, 41221D, 6A5F4D, A48563, B99A7B, C6A88B
Data C0A287, D2B18F, 8F6437, D3A981, C3966E, DAB79D, DEB596, D2AC85, C79B71, C39369, C69A73, BC9875, B6906C, BF9777, B2896C, 965B4A, 8D4B2C, B97C3C, B47B3E, C89364, BD8447, B0743D, AD712E, AF7A3C, BB814A, AE7541, 9B6937, 98642C, 99602B, 9D612D
Data 59361A, 131109, 646259, 66625A, 412421, 411F1E, 656152, A68061, A68765, C1A484, C3A389, A77A52, CBA27B, E6CCAF, E3C3A2, CB986D, CDA380, D4AA84, C59D77, BD9374, BF9A7A, BF9A76, A17753, 81503A, E1A8A2, D19085, C9897F, 90524C, 77311F, 8C4522
Data B67039, B97D3F, B57533, AB6C2E, 894F21, 845329, 6E4223, 341C0A, 100802, 0A0905, 110D04, 0A0D07, 3C1618, 391719, 351213, 431E21, 626355, A1835F, B09274, C0A283, D4B294, CEAB89, C9A582, D8B896, E8BD94, D8B28C, D9B18E, D0A884, C8A07D, BF9671
Data B68D6E, 7A5236, 8C5C4F, C59186, E1A6A0, D89A94, D48F88, C48175, C88E82, B57F74, 9E6A64, 694A47, 140C07, 110D09, 151107, 12130A, 131108, 131008, 120F07, 110E09, 0E0E0A, 0F0E05, 5D6052, 5E6052, 606052, 5E6053, 616250, 9B8365, B09678, B08E6A
Data C69D79, D5B58A, DAB495, CCA574, C9A282, CEA67E, B8926E, B18760, A37A54, 7F5A46, C49A8C, 9E705E, DCA6A0, E1A8A0, E1ACA9, D59996, CF8F87, C88881, CC8C82, AC7565, 886052, 81635B, 51392D, 0C0A08, 080804, 0F0F09, 0D0C08, 0D0B06, 0E0D07, 0E0D08
Data 0C0B07, 0C0D07, 5F6050, 5F6050, 5E644F, 5E614E, 626352, 9A8469, AF9776, BD9772, C19C78, E1C39E, E3BCA2, D7AA8E, C39A75, C19571, B08658, 987554, 271208, 593E2F, 694635, C39389, DAA7A1, E0B0A8, CE9F97, 916357, 7C5141, C38F85, C48A80, A37264
Data 745447, 5F3F34, 382921, 62615F, 8A8A8B, 000000, 131009, 13100A, 131309, 15130A, 15110B, 1A160C, 5E6150, 5D6150, 5F624F, 5F624F, 606350, 7E725E, A78660, C8A178, D4AE84, CA9E7B, CCA882, B6926F, B78B5F, B7906B, 0E0300, 17110F, 221810, 361F15
Data 9F746B, C59183, C69994, DBBAB0, CB9B8D, 895446, 694133, 8F6358, 724C47, 1D0A06, 0F0605, 4B3631, 25140F, 6A655A, 565751, 28261F, 443F37, 504A40, 605A4E, 696256, 6F675D, 6F6958, 5D604F, 5E6150, 606352, 5F6251, 606352, 756552, C3A180, BD926B
Data DAB38F, D3AE84, D4A884, AD8057, 97755B, 2A1C12, 110D06, 271B12, 361F1B, 8E6761, BD8D80, BF8D80, CEA994, B98E87, 301611, 654340, 633F33, B3826D, BE9A90, D19B99, 9C6F66, 8D6859, 473023, 5F5B4E, 2C271D, 655D4C, 71675B, 6F675A, 6F6959, 706A5B
Data 706959, 6E685D, 5D6150, 5F6251, 606350, 5D6152, 616351, B8916F, B78D59, B88856, C0926C, 9D7961, B59167, 361C0E, 3A2B23, 604F47, 473934, 483530, 604841, 553D35, 160B04, 020000, 3B3229, 000000, 554540, 8F6961, 98685A, B2877A, 70463F, D79D92
Data D99F97, BD857F, A17B6C, 58453C, 120F05, 150F03, 130C00, 403526, 6D6655, 6D655A, 6F675A, 6D6659, 5E5F4F, 5F5F50, 616050, 616152, 615C48, C89F7E, C2976A, D5AD87, A18366, A0866A, 71473B, 20150C, 311A10, 2E1F12, 29140E, 332219, 5B463B, 93706B
Data C79795, D5A7A2, CFA498, BC968E, 51312C, 835B50, 7C4C3F, 97645D, D39B91, D49D90, D2958A, CB877F, 9F6C5E, 87695D, 150F06, 14110A, 141009, 443C30, 706A59, 706A5E, 706A5D, 6F695B, 5C614F, 5E6251, 5F624F, 645D4D, A18D77, 917C63, 988372, A28569
Data C19F7B, AA725E, BE8A80, C08B80, B17C70, 5C362C, 311A12, 2D140C, 885952, D0978C, D69F93, DDABA3, D7A59A, DBA396, D79F90, CD9082, CD8D83, CF9086, D8988E, CE9486, C88B7E, DA9A94, C68680, 956356, 0C0803, 150C04, 50443A, 6B6356, 6E6659, 6E6758
Data 6D6856, 6B6759, 606151, 5F6050, 616352, 887961, CA9F76, D3A67A, BE946C, BE9572, BA8D6A, C08379, D7AAA0, E7C0AD, CA9380, A06B5A, 5B3E35, 644942, B28578, CF958A, D59D92, D6A498, E1ADA2, DEA89B, DEA499, DC9F95, D6958C, CF9185, C88877, D4978B
Data DA9E93, BE857A, BD867C, 966659, 27180F, 514336, 70675E, 6F685E, 70675D, 6D675C, 6E695D, 6C675C, 5F6150, 5D6251, 605D4C, BE9773, D2A887, CEA277, C39C7B, B18967, BB9877, B27C78, E4B3A5, CF9787, C3897A, D2A898, A87D6D, 5A3427, 98685A, C48E81
Data CE958A, D39F91, E4B5A7, E6B7AB, E4B0A5, E4ABA3, E0A49A, B87B6E, CF9686, C48D85, CC9593, BD8981, 835346, B88775, 211409, 473B2A, 6F695D, 6F695B, 6E695A, 6D675B, 6E6A5E, 6D695B, 5F6050, 606053, A28160, B58557, CA9F73, C59A73, BE9169, B38F6B
Data AF8868, 4B2C24, DCA396, F0CBB9, D7A493, E8BCAD, C29788, A57868, B38174, C28A7F, C79082, CB9286, DCA89C, DEABA0, E8B5A8, EAC0B7, DAA69A, C78D7E, D5938C, D69B99, CB9186, B27A69, 774936, C4937F, 150D04, 281E0F, 696155, 6D695C, 6D695C, 6D685C
Data 6F685D, 6E675C, 5F604A, 5F614D, B0875E, CFA179, B7885B, C1936A, BD9066, B2855C, A67A4D, 2D1910, D79D96, D6A799, DAA196, C2877C, D0A293, AE7F71, B08273, BB877A, C18C7E, C78D81, D8A295, DEA79C, E2A99E, E1ACA3, CD958A, C48F80, D69D95, D8A29B
Data C18479, A46C64, 9E6B5B, D4A08D, 0E0B00, 191008, 60584E, 6E6B5E, 6E6A5E, 6C695D, 706A5E, 6E695B, 5D6151, 6D6145, D6A87B, AA7B45, C89970, B38353, AD7C50, B18256, A77F50, 1F130C, 371B13, E0A5A2, E2A8A4, CFA19B, DAA498, B68677, B68674, BB897A
Data C69183, C79385, D19D90, D4A093, D6A296, D6A193, D7A294, B88C84, BBA29B, F0E8E2, EEDCD6, C0A7A2, 784537, B58B76, 140E07, 171008, 5C5146, 71695B, 6F695C, 6A6457, 6F695D, 6C665A, 5C6051, 815E34, B27B3B, C99670, B78950, A97641, B07F51, A77B4E
Data AA8055, 1D0D05, 221712, 2B120C, 81594F, C69E95, B88678, A87969, A87A68, B88778, C29081, C99587, D1A092, D3A294, D4A395, D19F90, DBA395, A3776B, AB7370, B8737B, BB6C6E, B9696D, 94605A, 906F61, 110C06, 170F06, 5F5646, 6E6759, 6D6859, 6D6759
Data 6D675B, 6C6659, 665D45, 86511F, B17C3F, B77F4C, B18153, B28156, AB7E53, A67D51, AD8761, 482E1C, 15100C, 191007, 341C14, 7F5C51, CB9486, D0A291, A57B69, AF8272, C19284, CA988B, D5A496, D6A597, D6A597, D5A395, D69D90, C99382, CB9082, D69D93
Data CF968B, BB8474, A57764, 8C6D64, 14130E, 271D12, 696055, 6B675C, 70675C, 666558, 6E665B, 6A675C, 6E6347, 955C23, BE8551, AA7240, BB8B62, B98C65, BA8F67, B18A62, B99572, A07957, 341A05, 2A1A11, 5C3B2C, A3979A, C18B7A, CC9888, A67868, A77E6C
Data B78C7C, C39586, CF9E90, D7A698, D7A698, D6A396, D9A194, D2998A, D69B8F, D59B8E, D2988C, C48A7A, AF7867, 946E5D, 110F0A, 281E0F, 675F53, 6B665A, 6C665A, 6A6559, 6A6458, 6A6458, 6E6046, A66A2F, AD7330, B37B3D, BA8A5D, B68D61, C09975, B38E67
Data B5906F, B6926E, A87E55, 462516, 694333, 8F726B, BE8874, C3907A, D9A395, 9F7362, AD8474, B88E7E, C79688, CF9E90, D1A092, D49F93, D39E90, D79D91, D99F94, D4988E, D2968D, D0948B, BC8075, 9D6B5D, 130E06, 2F281A, 6B6255, 6D675A, 6C6758, 686254
Data 6C6758, 6B6559, 605B44, B2824E, A05F1D, A96827, A66B2F, BD854F, BE8D5E, BA8D63, B5895F, AF804F, 9C6B35, 906038, 98684C, A57D6A, C7907C, C9937B, CF9880, D19A85, C6947F, A0735D, AE7F70, BE8F80, C89789, CA9084, D2978B, D69E93, D69D94, D89E9A
Data DAA09B, D19796, B77D70, B28174, 110D08, 383122, 6A6357, 696557, 6B6557, 6B6557, 696355, 6A6456, 5E5F50, B1895F, 9B5915, B37333, A86E2B, B5793B, AB6D2E, A97031, 9E6629, A4672D, A16018, 8C6147, 996343, 9B6343, C08871, C38873, CD957C, C78F79
Data D9A18D, D5A38D, A77A63, 946750, 9B6D58, B98979, C18E80, C48F7F, C68F82, C78E85, CB9285, C48B81, 9F6C60, 432A23, 13100A, 3E3324, 6A6756, 69655A, 6C6658, 666052, 6C6658, 6A6459, 5E5E55, 616151, BD8348, AC6E2D, A56420, B77E43, B77A3A, A36624
Data A76B2D, 9A5715, 9E5C1F, 956243, 9F6849, AB6F54, C08468, C68C74, B77F66, D19980, D39C86, D09C86, CA9883, C3917B, B5826C, 9D735A, 93705A, 1A0800, 251507, 2D1A0E, 2F1E14, 1C0D04, 13110B, 140E0B, 120F0A, 2C2414, 665E51, 6A6255, 696355, 696355
Data 686254, 6A6456, 5E5E4C, 5B614E, 4C442E, 9B6935, B06D2B, AE7034, A76B2E, AB6F30, 995E22, A76528, 9E6739, 9A6244, A0674B, AD745A, BC8368, BF866E, C48F77, BB866F, D29E85, D09B80, CC9781, C18E77, AD7C65, 865E46, 9A7864, 130904, 0F100A, 121008
Data 100E09, 100F0A, 150F08, 131009, 120E0B, 231E0D, 645D4F, 6B6356, 6A6456, 666052, 6B6457, 6C6657, 5D604F, 5D6050, 565746, 33321F, 0E0A00, 402817, 9E683F, 9A632A, 955E2F, 7E4A29, 8A593A, 9D6645, A06B4D, A76E54, B37C63, B78365, BA8670, B68472
Data B1826B, C7927D, C59075, BB866E, AD7F68, 7B533E, 785841, 0B0400, 0E0C06, 0D0E08, 0C0D07, 0E0F0A, 100F09, 11110A, 171209, 40382C, 696456, 696357, 676357, 696154, 6A6355, 6B6559, 5B5E4E, 5C5F4E, 5D5E4D, 4C4938, 1C1E11, 0C0F0B, 070B02, 36393C
Data 7C6555, 704B31, 8A5739, 986242, 9D6747, A26F57, A5755F, AF8B7E, C0A69C, BBA299, A5806F, A17664, BF8C74, B58368, A5795F, 6C4631, 886956, 090200, 0E0D04, 121005, 110F04, 100E03, 110E02, 1B190A, 534A3C, 6B6355, 6C6558, 696357, 656556, 645F53
Data 696559, 6C665A, 5A5E4D, 5B5E4C, 5B5E4D, 5C5E49, 5A5B4C, 2B2D1B, 151714, 77523A, 8C5B40, 7A513A, 8C5841, 935F44, 9A7867, E2DFE0, DBDADC, D2D5D5, D7DAD7, D7DBD7, D6D5D5, D2D0D2, E1DFD9, B2978C, 926B55, 7D563F, C6A198, 0B0300, 1A1509, 635C4F
Data 6B6253, 6C6251, 6C6354, 696354, 6D6759, 6B6556, 696254, 6A6155, 696250, 66614F, 676251, 696355, 595B4E, 5A5C4F, 5A5D4E, 5B5D4E, 5C5E4D, 575949, BCB5AE, 96664E, 7F543E, 794E38, 8A583C, 9D867B, DDDEE2, CFD3D4, C8B9B0, AD8276, A37363, AA7262
Data 986F5F, A08278, CABFC0, D7DCDA, D5D5D1, 725849, AA8978, 0C0100, 1C180D, 695D51, 6B6356, 6B6457, 6D6455, 6C6358, 6C6553, 6C6552, 6B6356, 6B6456, 676455, 645F51, 6A6157, 696254, 595B4B, 595D4B, 595E49, 5B5F4D, 5B5F4A, 5F5F5F, 785D42, 94674F
Data 7D543D, 7B4C39, 7B4C3D, CCCBCE, E9E7E1, A77F72, B07C63, B08166, B78572, BFA49B, E2E0DB, E3DDD8, CFC3BE, BFB4B3, AA9B95, B2A19B, B0A29B, 3F2E22, 1F150A, 655E4C, 6A6252, 6C6154, 6A6153, 6A6053, 6A6151, 6A6151, 696154, 656153, 676050, 655F4F
Data 636051, 645D4D, 323835, 333935, 333935, 343734, 363934, A29E9A, 916449, 90644B, 846048, 6F5043, C5CACA, 99715C, AD775D, B2816A, C2947B, C4A9A2, EAE6E5, A17E6F, AE7C65, AC785D, A57255, A46F53, AB7356, AB765A, A37154, 815540, 6A4E3D, 696155
Data 6D6652, 706455, 6D6552, 6D6452, 6C6256, 6C6457, 6D6455, 6D6555, 6A6456, 676152, 6A6353, 686152
For i = 1 to Datacount
bmp$ = bmp$ + Mkl$(Val("&H"+Read$(i)))
Next i
Function = bmp$
End Function
'gbs_00470
'Date: 03-10-2012
http://www.garybeene.com/sw/gbsnippets.htm