Have you ever considered using xpm file format?

On Tue, Feb 8, 2022 at 4:15 AM Jerome Shidel <jer...@shidel.net> wrote:
>
> Hi everyone,
>
> I’m not really much of a C (pick your flavor) user. Mostly I work in 
> Assembly, Pascal and other languages. However as I’m well aware, C is very 
> popular for development in FreeDOS. So, I have a favor to ask of one of the C 
> gurus.
>
> One of the programs that I’ve made recently is a pixel editor. It is geared 
> towards development and is simply called ImgEdit. It is primarily for 
> creating and editing graphical assets for programs running on top of my 
> “Danger Engine” game/application framework. It can export images to several 
> file formats. Being geared towards development, it can also export those 
> images to a Pascal Unit and NASM include as well as BMP and it’s native 
> graphics IGG format.
>
> To make the editor more useful, I would like to add export capability for any 
> generic version of C as well.
>
> Bellow is the output of a simple 16x16 white hollow square to source code as 
> NASM include and Pascal Unit. At present, the NASM version includes a 
> additional simplified Run Line Encoded version (DRE-Data Run Encoding) of the 
> image that is not in the Pascal version. And, the Pascal version includes 
> some structured variable that wouldn’t be very useful in assembly. Both also 
> include a palette map. Also, both structured in a way to not increase 
> compiled size for unused data. In NASM, that is done with the use of 
> macros/defines. In Pascal, the compiler just optimizes the extra stuff out.
>
> If one of you could create a C version that hopefully does not require a 
> specific version of C from the code bellow, I’ll examine it and add an 
> appropriate export filter to match. I could probably do it without 
> assistance. But, it is likely to result in something sub-optimal.
>
> :-)
>
> Jerome
>
> ——————————————————————————————
> NASM include version: DEMO_IMG.INC
> ——————————————————————————————
> ; Nasm 2.x compatible raw graphic image include
> ; auto-created by Danger Engine
>
> %define IMAGE_DEMO_IMG_BYTES  0x0100            ; 256 bytes
> %define IMAGE_DEMO_IMG_WIDTH  0x0010            ; 16 pixels
> %define IMAGE_DEMO_IMG_HEIGHT 0x0010            ; 16 pixels
>
> %macro IMAGE_DEMO_IMG_DATA 0
>         db 0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F
>         db 0x0F,0x0F,0x0F                                                   ; > 0
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 1
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 2
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 3
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 4
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 5
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 6
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 7
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 8
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 9
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 10
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 11
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 12
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 13
>         db 0x0F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
>         db 0x00,0x00,0x0F                                                   ; 
> 14
>         db 0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F,0x0F
>         db 0x0F,0x0F,0x0F                                                   ; 
> 15
> %endmacro ; IMAGE_DEMO_IMG_DATA
>
> %macro IMAGE_DEMO_IMG_RGB 0
> ; RGB Palette Values 0-255. Most VGA takes 0-63. So, divide them by 4. Or,
> ; simply shift them right by 2.
>         db 0x00,0x00,0x00, 0x00,0x00,0xA8, 0x00,0xA8,0x00, 0x00,0xA8,0xA8     
>   ; 0
>         db 0xA8,0x00,0x00, 0xA8,0x00,0xA8, 0xA8,0x54,0x00, 0xA8,0xA8,0xA8     
>   ; 4
>         db 0x54,0x54,0x54, 0x54,0x54,0xFC, 0x54,0xFC,0x54, 0x54,0xFC,0xFC     
>   ; 8
>         db 0xFC,0x54,0x54, 0xFC,0x54,0xFC, 0xFC,0xFC,0x54, 0xFC,0xFC,0xFC     
>   ; 12
>         db 0x00,0x00,0x00, 0x14,0x14,0x14, 0x20,0x20,0x20, 0x2C,0x2C,0x2C     
>   ; 16
>         db 0x38,0x38,0x38, 0x44,0x44,0x44, 0x50,0x50,0x50, 0x60,0x60,0x60     
>   ; 20
>         db 0x70,0x70,0x70, 0x80,0x80,0x80, 0x90,0x90,0x90, 0xA0,0xA0,0xA0     
>   ; 24
>         db 0xB4,0xB4,0xB4, 0xC8,0xC8,0xC8, 0xE0,0xE0,0xE0, 0xFC,0xFC,0xFC     
>   ; 28
>         db 0x00,0x00,0xFC, 0x40,0x00,0xFC, 0x7C,0x00,0xFC, 0xBC,0x00,0xFC     
>   ; 32
>         db 0xFC,0x00,0xFC, 0xFC,0x00,0xBC, 0xFC,0x00,0x7C, 0xFC,0x00,0x40     
>   ; 36
>         db 0xFC,0x00,0x00, 0xFC,0x40,0x00, 0xFC,0x7C,0x00, 0xFC,0xBC,0x00     
>   ; 40
>         db 0xFC,0xFC,0x00, 0xBC,0xFC,0x00, 0x7C,0xFC,0x00, 0x40,0xFC,0x00     
>   ; 44
>         db 0x00,0xFC,0x00, 0x00,0xFC,0x40, 0x00,0xFC,0x7C, 0x00,0xFC,0xBC     
>   ; 48
>         db 0x00,0xFC,0xFC, 0x00,0xBC,0xFC, 0x00,0x7C,0xFC, 0x00,0x40,0xFC     
>   ; 52
>         db 0x7C,0x7C,0xFC, 0x9C,0x7C,0xFC, 0xBC,0x7C,0xFC, 0xDC,0x7C,0xFC     
>   ; 56
>         db 0xFC,0x7C,0xFC, 0xFC,0x7C,0xDC, 0xFC,0x7C,0xBC, 0xFC,0x7C,0x9C     
>   ; 60
>         db 0xFC,0x7C,0x7C, 0xFC,0x9C,0x7C, 0xFC,0xBC,0x7C, 0xFC,0xDC,0x7C     
>   ; 64
>         db 0xFC,0xFC,0x7C, 0xDC,0xFC,0x7C, 0xBC,0xFC,0x7C, 0x9C,0xFC,0x7C     
>   ; 68
>         db 0x7C,0xFC,0x7C, 0x7C,0xFC,0x9C, 0x7C,0xFC,0xBC, 0x7C,0xFC,0xDC     
>   ; 72
>         db 0x7C,0xFC,0xFC, 0x7C,0xDC,0xFC, 0x7C,0xBC,0xFC, 0x7C,0x9C,0xFC     
>   ; 76
>         db 0xB4,0xB4,0xFC, 0xC4,0xB4,0xFC, 0xD8,0xB4,0xFC, 0xE8,0xB4,0xFC     
>   ; 80
>         db 0xFC,0xB4,0xFC, 0xFC,0xB4,0xE8, 0xFC,0xB4,0xD8, 0xFC,0xB4,0xC4     
>   ; 84
>         db 0xFC,0xB4,0xB4, 0xFC,0xC4,0xB4, 0xFC,0xD8,0xB4, 0xFC,0xE8,0xB4     
>   ; 88
>         db 0xFC,0xFC,0xB4, 0xE8,0xFC,0xB4, 0xD8,0xFC,0xB4, 0xC4,0xFC,0xB4     
>   ; 92
>         db 0xB4,0xFC,0xB4, 0xB4,0xFC,0xC4, 0xB4,0xFC,0xD8, 0xB4,0xFC,0xE8     
>   ; 96
>         db 0xB4,0xFC,0xFC, 0xB4,0xE8,0xFC, 0xB4,0xD8,0xFC, 0xB4,0xC4,0xFC     
>   ; 100
>         db 0x00,0x00,0x70, 0x1C,0x00,0x70, 0x38,0x00,0x70, 0x54,0x00,0x70     
>   ; 104
>         db 0x70,0x00,0x70, 0x70,0x00,0x54, 0x70,0x00,0x38, 0x70,0x00,0x1C     
>   ; 108
>         db 0x70,0x00,0x00, 0x70,0x1C,0x00, 0x70,0x38,0x00, 0x70,0x54,0x00     
>   ; 112
>         db 0x70,0x70,0x00, 0x54,0x70,0x00, 0x38,0x70,0x00, 0x1C,0x70,0x00     
>   ; 116
>         db 0x00,0x70,0x00, 0x00,0x70,0x1C, 0x00,0x70,0x38, 0x00,0x70,0x54     
>   ; 120
>         db 0x00,0x70,0x70, 0x00,0x54,0x70, 0x00,0x38,0x70, 0x00,0x1C,0x70     
>   ; 124
>         db 0x38,0x38,0x70, 0x44,0x38,0x70, 0x54,0x38,0x70, 0x60,0x38,0x70     
>   ; 128
>         db 0x70,0x38,0x70, 0x70,0x38,0x60, 0x70,0x38,0x54, 0x70,0x38,0x44     
>   ; 132
>         db 0x70,0x38,0x38, 0x70,0x44,0x38, 0x70,0x54,0x38, 0x70,0x60,0x38     
>   ; 136
>         db 0x70,0x70,0x38, 0x60,0x70,0x38, 0x54,0x70,0x38, 0x44,0x70,0x38     
>   ; 140
>         db 0x38,0x70,0x38, 0x38,0x70,0x44, 0x38,0x70,0x54, 0x38,0x70,0x60     
>   ; 144
>         db 0x38,0x70,0x70, 0x38,0x60,0x70, 0x38,0x54,0x70, 0x38,0x44,0x70     
>   ; 148
>         db 0x50,0x50,0x70, 0x58,0x50,0x70, 0x60,0x50,0x70, 0x68,0x50,0x70     
>   ; 152
>         db 0x70,0x50,0x70, 0x70,0x50,0x68, 0x70,0x50,0x60, 0x70,0x50,0x58     
>   ; 156
>         db 0x70,0x50,0x50, 0x70,0x58,0x50, 0x70,0x60,0x50, 0x70,0x68,0x50     
>   ; 160
>         db 0x70,0x70,0x50, 0x68,0x70,0x50, 0x60,0x70,0x50, 0x58,0x70,0x50     
>   ; 164
>         db 0x50,0x70,0x50, 0x50,0x70,0x58, 0x50,0x70,0x60, 0x50,0x70,0x68     
>   ; 168
>         db 0x50,0x70,0x70, 0x50,0x68,0x70, 0x50,0x60,0x70, 0x50,0x58,0x70     
>   ; 172
>         db 0x00,0x00,0x40, 0x10,0x00,0x40, 0x20,0x00,0x40, 0x30,0x00,0x40     
>   ; 176
>         db 0x40,0x00,0x40, 0x40,0x00,0x30, 0x40,0x00,0x20, 0x40,0x00,0x10     
>   ; 180
>         db 0x40,0x00,0x00, 0x40,0x10,0x00, 0x40,0x20,0x00, 0x40,0x30,0x00     
>   ; 184
>         db 0x40,0x40,0x00, 0x30,0x40,0x00, 0x20,0x40,0x00, 0x10,0x40,0x00     
>   ; 188
>         db 0x00,0x40,0x00, 0x00,0x40,0x10, 0x00,0x40,0x20, 0x00,0x40,0x30     
>   ; 192
>         db 0x00,0x40,0x40, 0x00,0x30,0x40, 0x00,0x20,0x40, 0x00,0x10,0x40     
>   ; 196
>         db 0x20,0x20,0x40, 0x28,0x20,0x40, 0x30,0x20,0x40, 0x38,0x20,0x40     
>   ; 200
>         db 0x40,0x20,0x40, 0x40,0x20,0x38, 0x40,0x20,0x30, 0x40,0x20,0x28     
>   ; 204
>         db 0x40,0x20,0x20, 0x40,0x28,0x20, 0x40,0x30,0x20, 0x40,0x38,0x20     
>   ; 208
>         db 0x40,0x40,0x20, 0x38,0x40,0x20, 0x30,0x40,0x20, 0x28,0x40,0x20     
>   ; 212
>         db 0x20,0x40,0x20, 0x20,0x40,0x28, 0x20,0x40,0x30, 0x20,0x40,0x38     
>   ; 216
>         db 0x20,0x40,0x40, 0x20,0x38,0x40, 0x20,0x30,0x40, 0x20,0x28,0x40     
>   ; 220
>         db 0x2C,0x2C,0x40, 0x30,0x2C,0x40, 0x34,0x2C,0x40, 0x3C,0x2C,0x40     
>   ; 224
>         db 0x40,0x2C,0x40, 0x40,0x2C,0x3C, 0x40,0x2C,0x34, 0x40,0x2C,0x30     
>   ; 228
>         db 0x40,0x2C,0x2C, 0x40,0x30,0x2C, 0x40,0x34,0x2C, 0x40,0x3C,0x2C     
>   ; 232
>         db 0x40,0x40,0x2C, 0x3C,0x40,0x2C, 0x34,0x40,0x2C, 0x30,0x40,0x2C     
>   ; 236
>         db 0x2C,0x40,0x2C, 0x2C,0x40,0x30, 0x2C,0x40,0x34, 0x2C,0x40,0x3C     
>   ; 240
>         db 0x2C,0x40,0x40, 0x2C,0x3C,0x40, 0x2C,0x34,0x40, 0x3C,0x00,0x00     
>   ; 244
>         db 0x7C,0x00,0x00, 0xBC,0x00,0x00, 0x00,0x3C,0x00, 0x00,0x7C,0x00     
>   ; 248
>         db 0x00,0xBC,0x00, 0x00,0x00,0x3C, 0x00,0x00,0x7C, 0x00,0x00,0xBC     
>   ; 252
> %endmacro ; IMAGE_DEMO_IMG_RGB
>
> %macro IMAGE_DEMO_IMG_DRE 0
> ; DRE encoded version of the image. DRE encoding is an extremely simple
> ; type of run line encoding. The first byte is the number of times. The
> ; second byte is the data to repeat. Terminated with a 0. So 0201030200
> ; would expand to 01 01 02 02 02.
>         db 0x11,0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02
>         db 0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F
>         db 0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F,0x0E
>         db 0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00,0x02,0x0F,0x0E,0x00
>         db 0x02,0x0F,0x0E,0x00,0x11,0x0F,0x00
> %endmacro ; IMAGE_DEMO_IMG_DRE 59 bytes
> ——————————————————————————————
> Borland Turbo Pascal version: DEMO_IMG.PAS
> ——————————————————————————————
> { Pascal Source Unit Graphics Image }
> { auto-created by Danger Engine }
>
> unit DEMO_IMG;
>
> interface
>
> const
>         IMAGE_DEMO_IMG_PIXELS = $0106;          { 262 bytes }
>         IMAGE_DEMO_IMG : record
>                 Width  : word;
>                 Height : word;
>                 Bitmap : array[0..IMAGE_DEMO_IMG_PIXELS-1] of byte;
>         end = (
>                 Width  :$0010;          { 16 pixels }
>                 Height :$0010;          { 16 pixels }
>                 Bitmap  : (
>
>                 
> $0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,  {0}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {1}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {2}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {3}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {4}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {5}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {6}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {7}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {8}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {9}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {10}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {11}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {12}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {13}
>                 
> $0F,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,  {14}
>                 
> $0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F,$0F   {15}
>
>                 )
>         ); { IMAGE_DEMO_IMG_DATA }
>
>         IMAGE_DEMO_IMG_RGB : array [0..255] of record
>                 Red   : byte;
>                 Green : byte;
>                 Blue  : byte;
>         end = (
>         { RGB Palette Values 0-255. Most VGA takes 0-63. So, divide them by 
> 4. Or,
>           simply shift them right by 2. }
>         {  0} (Red:$00; Green:$00; Blue:$00), {  1} (Red:$00; Green:$00; 
> Blue:$A8),
>         {  2} (Red:$00; Green:$A8; Blue:$00), {  3} (Red:$00; Green:$A8; 
> Blue:$A8),
>         {  4} (Red:$A8; Green:$00; Blue:$00), {  5} (Red:$A8; Green:$00; 
> Blue:$A8),
>         {  6} (Red:$A8; Green:$54; Blue:$00), {  7} (Red:$A8; Green:$A8; 
> Blue:$A8),
>         {  8} (Red:$54; Green:$54; Blue:$54), {  9} (Red:$54; Green:$54; 
> Blue:$FC),
>         { 10} (Red:$54; Green:$FC; Blue:$54), { 11} (Red:$54; Green:$FC; 
> Blue:$FC),
>         { 12} (Red:$FC; Green:$54; Blue:$54), { 13} (Red:$FC; Green:$54; 
> Blue:$FC),
>         { 14} (Red:$FC; Green:$FC; Blue:$54), { 15} (Red:$FC; Green:$FC; 
> Blue:$FC),
>         { 16} (Red:$00; Green:$00; Blue:$00), { 17} (Red:$14; Green:$14; 
> Blue:$14),
>         { 18} (Red:$20; Green:$20; Blue:$20), { 19} (Red:$2C; Green:$2C; 
> Blue:$2C),
>         { 20} (Red:$38; Green:$38; Blue:$38), { 21} (Red:$44; Green:$44; 
> Blue:$44),
>         { 22} (Red:$50; Green:$50; Blue:$50), { 23} (Red:$60; Green:$60; 
> Blue:$60),
>         { 24} (Red:$70; Green:$70; Blue:$70), { 25} (Red:$80; Green:$80; 
> Blue:$80),
>         { 26} (Red:$90; Green:$90; Blue:$90), { 27} (Red:$A0; Green:$A0; 
> Blue:$A0),
>         { 28} (Red:$B4; Green:$B4; Blue:$B4), { 29} (Red:$C8; Green:$C8; 
> Blue:$C8),
>         { 30} (Red:$E0; Green:$E0; Blue:$E0), { 31} (Red:$FC; Green:$FC; 
> Blue:$FC),
>         { 32} (Red:$00; Green:$00; Blue:$FC), { 33} (Red:$40; Green:$00; 
> Blue:$FC),
>         { 34} (Red:$7C; Green:$00; Blue:$FC), { 35} (Red:$BC; Green:$00; 
> Blue:$FC),
>         { 36} (Red:$FC; Green:$00; Blue:$FC), { 37} (Red:$FC; Green:$00; 
> Blue:$BC),
>         { 38} (Red:$FC; Green:$00; Blue:$7C), { 39} (Red:$FC; Green:$00; 
> Blue:$40),
>         { 40} (Red:$FC; Green:$00; Blue:$00), { 41} (Red:$FC; Green:$40; 
> Blue:$00),
>         { 42} (Red:$FC; Green:$7C; Blue:$00), { 43} (Red:$FC; Green:$BC; 
> Blue:$00),
>         { 44} (Red:$FC; Green:$FC; Blue:$00), { 45} (Red:$BC; Green:$FC; 
> Blue:$00),
>         { 46} (Red:$7C; Green:$FC; Blue:$00), { 47} (Red:$40; Green:$FC; 
> Blue:$00),
>         { 48} (Red:$00; Green:$FC; Blue:$00), { 49} (Red:$00; Green:$FC; 
> Blue:$40),
>         { 50} (Red:$00; Green:$FC; Blue:$7C), { 51} (Red:$00; Green:$FC; 
> Blue:$BC),
>         { 52} (Red:$00; Green:$FC; Blue:$FC), { 53} (Red:$00; Green:$BC; 
> Blue:$FC),
>         { 54} (Red:$00; Green:$7C; Blue:$FC), { 55} (Red:$00; Green:$40; 
> Blue:$FC),
>         { 56} (Red:$7C; Green:$7C; Blue:$FC), { 57} (Red:$9C; Green:$7C; 
> Blue:$FC),
>         { 58} (Red:$BC; Green:$7C; Blue:$FC), { 59} (Red:$DC; Green:$7C; 
> Blue:$FC),
>         { 60} (Red:$FC; Green:$7C; Blue:$FC), { 61} (Red:$FC; Green:$7C; 
> Blue:$DC),
>         { 62} (Red:$FC; Green:$7C; Blue:$BC), { 63} (Red:$FC; Green:$7C; 
> Blue:$9C),
>         { 64} (Red:$FC; Green:$7C; Blue:$7C), { 65} (Red:$FC; Green:$9C; 
> Blue:$7C),
>         { 66} (Red:$FC; Green:$BC; Blue:$7C), { 67} (Red:$FC; Green:$DC; 
> Blue:$7C),
>         { 68} (Red:$FC; Green:$FC; Blue:$7C), { 69} (Red:$DC; Green:$FC; 
> Blue:$7C),
>         { 70} (Red:$BC; Green:$FC; Blue:$7C), { 71} (Red:$9C; Green:$FC; 
> Blue:$7C),
>         { 72} (Red:$7C; Green:$FC; Blue:$7C), { 73} (Red:$7C; Green:$FC; 
> Blue:$9C),
>         { 74} (Red:$7C; Green:$FC; Blue:$BC), { 75} (Red:$7C; Green:$FC; 
> Blue:$DC),
>         { 76} (Red:$7C; Green:$FC; Blue:$FC), { 77} (Red:$7C; Green:$DC; 
> Blue:$FC),
>         { 78} (Red:$7C; Green:$BC; Blue:$FC), { 79} (Red:$7C; Green:$9C; 
> Blue:$FC),
>         { 80} (Red:$B4; Green:$B4; Blue:$FC), { 81} (Red:$C4; Green:$B4; 
> Blue:$FC),
>         { 82} (Red:$D8; Green:$B4; Blue:$FC), { 83} (Red:$E8; Green:$B4; 
> Blue:$FC),
>         { 84} (Red:$FC; Green:$B4; Blue:$FC), { 85} (Red:$FC; Green:$B4; 
> Blue:$E8),
>         { 86} (Red:$FC; Green:$B4; Blue:$D8), { 87} (Red:$FC; Green:$B4; 
> Blue:$C4),
>         { 88} (Red:$FC; Green:$B4; Blue:$B4), { 89} (Red:$FC; Green:$C4; 
> Blue:$B4),
>         { 90} (Red:$FC; Green:$D8; Blue:$B4), { 91} (Red:$FC; Green:$E8; 
> Blue:$B4),
>         { 92} (Red:$FC; Green:$FC; Blue:$B4), { 93} (Red:$E8; Green:$FC; 
> Blue:$B4),
>         { 94} (Red:$D8; Green:$FC; Blue:$B4), { 95} (Red:$C4; Green:$FC; 
> Blue:$B4),
>         { 96} (Red:$B4; Green:$FC; Blue:$B4), { 97} (Red:$B4; Green:$FC; 
> Blue:$C4),
>         { 98} (Red:$B4; Green:$FC; Blue:$D8), { 99} (Red:$B4; Green:$FC; 
> Blue:$E8),
>         {100} (Red:$B4; Green:$FC; Blue:$FC), {101} (Red:$B4; Green:$E8; 
> Blue:$FC),
>         {102} (Red:$B4; Green:$D8; Blue:$FC), {103} (Red:$B4; Green:$C4; 
> Blue:$FC),
>         {104} (Red:$00; Green:$00; Blue:$70), {105} (Red:$1C; Green:$00; 
> Blue:$70),
>         {106} (Red:$38; Green:$00; Blue:$70), {107} (Red:$54; Green:$00; 
> Blue:$70),
>         {108} (Red:$70; Green:$00; Blue:$70), {109} (Red:$70; Green:$00; 
> Blue:$54),
>         {110} (Red:$70; Green:$00; Blue:$38), {111} (Red:$70; Green:$00; 
> Blue:$1C),
>         {112} (Red:$70; Green:$00; Blue:$00), {113} (Red:$70; Green:$1C; 
> Blue:$00),
>         {114} (Red:$70; Green:$38; Blue:$00), {115} (Red:$70; Green:$54; 
> Blue:$00),
>         {116} (Red:$70; Green:$70; Blue:$00), {117} (Red:$54; Green:$70; 
> Blue:$00),
>         {118} (Red:$38; Green:$70; Blue:$00), {119} (Red:$1C; Green:$70; 
> Blue:$00),
>         {120} (Red:$00; Green:$70; Blue:$00), {121} (Red:$00; Green:$70; 
> Blue:$1C),
>         {122} (Red:$00; Green:$70; Blue:$38), {123} (Red:$00; Green:$70; 
> Blue:$54),
>         {124} (Red:$00; Green:$70; Blue:$70), {125} (Red:$00; Green:$54; 
> Blue:$70),
>         {126} (Red:$00; Green:$38; Blue:$70), {127} (Red:$00; Green:$1C; 
> Blue:$70),
>         {128} (Red:$38; Green:$38; Blue:$70), {129} (Red:$44; Green:$38; 
> Blue:$70),
>         {130} (Red:$54; Green:$38; Blue:$70), {131} (Red:$60; Green:$38; 
> Blue:$70),
>         {132} (Red:$70; Green:$38; Blue:$70), {133} (Red:$70; Green:$38; 
> Blue:$60),
>         {134} (Red:$70; Green:$38; Blue:$54), {135} (Red:$70; Green:$38; 
> Blue:$44),
>         {136} (Red:$70; Green:$38; Blue:$38), {137} (Red:$70; Green:$44; 
> Blue:$38),
>         {138} (Red:$70; Green:$54; Blue:$38), {139} (Red:$70; Green:$60; 
> Blue:$38),
>         {140} (Red:$70; Green:$70; Blue:$38), {141} (Red:$60; Green:$70; 
> Blue:$38),
>         {142} (Red:$54; Green:$70; Blue:$38), {143} (Red:$44; Green:$70; 
> Blue:$38),
>         {144} (Red:$38; Green:$70; Blue:$38), {145} (Red:$38; Green:$70; 
> Blue:$44),
>         {146} (Red:$38; Green:$70; Blue:$54), {147} (Red:$38; Green:$70; 
> Blue:$60),
>         {148} (Red:$38; Green:$70; Blue:$70), {149} (Red:$38; Green:$60; 
> Blue:$70),
>         {150} (Red:$38; Green:$54; Blue:$70), {151} (Red:$38; Green:$44; 
> Blue:$70),
>         {152} (Red:$50; Green:$50; Blue:$70), {153} (Red:$58; Green:$50; 
> Blue:$70),
>         {154} (Red:$60; Green:$50; Blue:$70), {155} (Red:$68; Green:$50; 
> Blue:$70),
>         {156} (Red:$70; Green:$50; Blue:$70), {157} (Red:$70; Green:$50; 
> Blue:$68),
>         {158} (Red:$70; Green:$50; Blue:$60), {159} (Red:$70; Green:$50; 
> Blue:$58),
>         {160} (Red:$70; Green:$50; Blue:$50), {161} (Red:$70; Green:$58; 
> Blue:$50),
>         {162} (Red:$70; Green:$60; Blue:$50), {163} (Red:$70; Green:$68; 
> Blue:$50),
>         {164} (Red:$70; Green:$70; Blue:$50), {165} (Red:$68; Green:$70; 
> Blue:$50),
>         {166} (Red:$60; Green:$70; Blue:$50), {167} (Red:$58; Green:$70; 
> Blue:$50),
>         {168} (Red:$50; Green:$70; Blue:$50), {169} (Red:$50; Green:$70; 
> Blue:$58),
>         {170} (Red:$50; Green:$70; Blue:$60), {171} (Red:$50; Green:$70; 
> Blue:$68),
>         {172} (Red:$50; Green:$70; Blue:$70), {173} (Red:$50; Green:$68; 
> Blue:$70),
>         {174} (Red:$50; Green:$60; Blue:$70), {175} (Red:$50; Green:$58; 
> Blue:$70),
>         {176} (Red:$00; Green:$00; Blue:$40), {177} (Red:$10; Green:$00; 
> Blue:$40),
>         {178} (Red:$20; Green:$00; Blue:$40), {179} (Red:$30; Green:$00; 
> Blue:$40),
>         {180} (Red:$40; Green:$00; Blue:$40), {181} (Red:$40; Green:$00; 
> Blue:$30),
>         {182} (Red:$40; Green:$00; Blue:$20), {183} (Red:$40; Green:$00; 
> Blue:$10),
>         {184} (Red:$40; Green:$00; Blue:$00), {185} (Red:$40; Green:$10; 
> Blue:$00),
>         {186} (Red:$40; Green:$20; Blue:$00), {187} (Red:$40; Green:$30; 
> Blue:$00),
>         {188} (Red:$40; Green:$40; Blue:$00), {189} (Red:$30; Green:$40; 
> Blue:$00),
>         {190} (Red:$20; Green:$40; Blue:$00), {191} (Red:$10; Green:$40; 
> Blue:$00),
>         {192} (Red:$00; Green:$40; Blue:$00), {193} (Red:$00; Green:$40; 
> Blue:$10),
>         {194} (Red:$00; Green:$40; Blue:$20), {195} (Red:$00; Green:$40; 
> Blue:$30),
>         {196} (Red:$00; Green:$40; Blue:$40), {197} (Red:$00; Green:$30; 
> Blue:$40),
>         {198} (Red:$00; Green:$20; Blue:$40), {199} (Red:$00; Green:$10; 
> Blue:$40),
>         {200} (Red:$20; Green:$20; Blue:$40), {201} (Red:$28; Green:$20; 
> Blue:$40),
>         {202} (Red:$30; Green:$20; Blue:$40), {203} (Red:$38; Green:$20; 
> Blue:$40),
>         {204} (Red:$40; Green:$20; Blue:$40), {205} (Red:$40; Green:$20; 
> Blue:$38),
>         {206} (Red:$40; Green:$20; Blue:$30), {207} (Red:$40; Green:$20; 
> Blue:$28),
>         {208} (Red:$40; Green:$20; Blue:$20), {209} (Red:$40; Green:$28; 
> Blue:$20),
>         {210} (Red:$40; Green:$30; Blue:$20), {211} (Red:$40; Green:$38; 
> Blue:$20),
>         {212} (Red:$40; Green:$40; Blue:$20), {213} (Red:$38; Green:$40; 
> Blue:$20),
>         {214} (Red:$30; Green:$40; Blue:$20), {215} (Red:$28; Green:$40; 
> Blue:$20),
>         {216} (Red:$20; Green:$40; Blue:$20), {217} (Red:$20; Green:$40; 
> Blue:$28),
>         {218} (Red:$20; Green:$40; Blue:$30), {219} (Red:$20; Green:$40; 
> Blue:$38),
>         {220} (Red:$20; Green:$40; Blue:$40), {221} (Red:$20; Green:$38; 
> Blue:$40),
>         {222} (Red:$20; Green:$30; Blue:$40), {223} (Red:$20; Green:$28; 
> Blue:$40),
>         {224} (Red:$2C; Green:$2C; Blue:$40), {225} (Red:$30; Green:$2C; 
> Blue:$40),
>         {226} (Red:$34; Green:$2C; Blue:$40), {227} (Red:$3C; Green:$2C; 
> Blue:$40),
>         {228} (Red:$40; Green:$2C; Blue:$40), {229} (Red:$40; Green:$2C; 
> Blue:$3C),
>         {230} (Red:$40; Green:$2C; Blue:$34), {231} (Red:$40; Green:$2C; 
> Blue:$30),
>         {232} (Red:$40; Green:$2C; Blue:$2C), {233} (Red:$40; Green:$30; 
> Blue:$2C),
>         {234} (Red:$40; Green:$34; Blue:$2C), {235} (Red:$40; Green:$3C; 
> Blue:$2C),
>         {236} (Red:$40; Green:$40; Blue:$2C), {237} (Red:$3C; Green:$40; 
> Blue:$2C),
>         {238} (Red:$34; Green:$40; Blue:$2C), {239} (Red:$30; Green:$40; 
> Blue:$2C),
>         {240} (Red:$2C; Green:$40; Blue:$2C), {241} (Red:$2C; Green:$40; 
> Blue:$30),
>         {242} (Red:$2C; Green:$40; Blue:$34), {243} (Red:$2C; Green:$40; 
> Blue:$3C),
>         {244} (Red:$2C; Green:$40; Blue:$40), {245} (Red:$2C; Green:$3C; 
> Blue:$40),
>         {246} (Red:$2C; Green:$34; Blue:$40), {247} (Red:$3C; Green:$00; 
> Blue:$00),
>         {248} (Red:$7C; Green:$00; Blue:$00), {249} (Red:$BC; Green:$00; 
> Blue:$00),
>         {250} (Red:$00; Green:$3C; Blue:$00), {251} (Red:$00; Green:$7C; 
> Blue:$00),
>         {252} (Red:$00; Green:$BC; Blue:$00), {253} (Red:$00; Green:$00; 
> Blue:$3C),
>         {254} (Red:$00; Green:$00; Blue:$7C), {255} (Red:$00; Green:$00; 
> Blue:$BC)
>         ); { IMAGE_DEMO_IMG_RGB }
>
> implementation
>
> end.
>
> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to