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