Stef wrote:Chilly Willy wrote:powerofrecall wrote:Not really germane to the discussion but those Delphi utilities will build in Lazarus free pascal with some changes related to paths (IIRC just changing the slashes). At least it does for me on ubuntu in a VM.
Good point - I should install Lazarus and try that... it would be easier than rewriting them all by hand.

Don't worry, the source you posted is not lost, i will use it as i want to port all these small utilities to C language

If you want them all in C, I'll keep on that. In the meantime, I found a weird bug in pascal... both Lazarus and Delphi.
I tried to compile bintoc with Lazarus, which worked fine. However, when I ran it on a bmp, I got this
Code: Select all
#include "genesis.h"
const u16 moon[0x0412] = {
0x0040, 0x0040,
0x0000, 0x0EEE, 0x0442, 0x0000, 0x0420, 0x0A42, 0x0422, 0x0866, 0x0842, 0x0A64, 0x0C64, 0x0C86, 0x0CA8, 0x0ECC, 0x0EEE, 0x0EEE,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE04333,
0xE03343, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03433, 0xE04333, 0xE03333,
0xE03333, 0xE03334, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE04466,
0xE06443, 0xE03333, 0xE03343, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03334, 0xE03333, 0xE027BD, 0xE0DEEE,
0xE0EDDC, 0xE0B763, 0xE03333, 0xE03334, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE0347C, 0xE0EEEE, 0xE0EEEE,
0xE0DDCC, 0xE0CDDD, 0xE07633, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03334, 0xE07DED, 0xE0DEEE, 0xE0EEEE,
0xE0DCBB, 0xE0BBDD, 0xE0DDB6, 0xE03433, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03343, 0xE0347D, 0xE0EEEE, 0xE0EDEE, 0xE0EEED,
0xE0DDDC, 0xE0BBCE, 0xE0DDDD, 0xE07433, 0xE04333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE02DEE, 0xE0EEED, 0xE0EDEE, 0xE0EEED,
0xE0EEEE, 0xE0EEEE, 0xE0EDCC, 0xE0EC23, 0xE03343, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03347, 0xE0EEED, 0xE0DDCC, 0xE0CCDE, 0xE0EEDE,
0xE0EDEE, 0xE0DDDC, 0xE0CBBC, 0xE0DDDB, 0xE04333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE033BE, 0xE0ECCC, 0xE0DDDC, 0xE0CDEE, 0xE0EEDC,
0xE0CCCB, 0xE0CCCC, 0xE0BBCB, 0xE0CDEE, 0xE0B433, 0xE03433, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE04BED, 0xE0CCCD, 0xE0CDCC, 0xE0CDCC, 0xE0DDDC,
0xE0BBAB, 0xE0BCCC, 0xE0BBBB, 0xE0BDED, 0xE0EC43, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE07EDD, 0xE0CCCD, 0xE0CCCC, 0xE0BBAA, 0xE0BCCC,
0xE0BBAB, 0xE0BBBC, 0xE0CBBB, 0xE0BCDD, 0xE0DEB4, 0xE03343, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03337, 0xE0EDDC, 0xE0CDDD, 0xE0CDCB, 0xE0BCBB, 0xE0BABB,
0xE0BAAA, 0xE0BBBC, 0xE0CCBC, 0xE0CBCC, 0xE0DDEB, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE0336E, 0xE0EDCC, 0xE0CCDD, 0xE0DCBB, 0xE0BBBA, 0xE0BBBB,
0xE0ABAB, 0xE0BBDD, 0xE0DDDC, 0xE0CCDD, 0xE0CEDE, 0xE02343, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE033DE, 0xE0DCCC, 0xE0CDDD, 0xE0CBBB, 0xE0ABCB, 0xE0BBBA,
0xE0BBAA, 0xE0BBDE, 0xE0DEEE, 0xE0EDDD, 0xE0DEEE, 0xE0E434, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE037EE, 0xE0CCBC, 0xE0CDDD, 0xE0CBAB, 0xE0BBBB, 0xE0BBBA,
0xE0ABBB, 0xE0BBCD, 0xE0DDEE, 0xE0EEED, 0xE0CDEE, 0xE0EB33, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE04DED, 0xE0BCDD, 0xE0DCDC, 0xE0DBBB, 0xE0ABAA, 0xE0CCCA,
0xE0AABB, 0xE0BBBC, 0xE0DDDB, 0xE0CEDD, 0xE0DEEE, 0xE0EE23, 0xE04333, 0xE03333,
0xE03333, 0xE03333, 0xE07ECC, 0xE0BCDC, 0xE0CCCC, 0xE0BCBB, 0xE0AAAB, 0xE0CCCB,
0xE0BBBB, 0xE0CCDC, 0xE0CCDC, 0xE0CCCD, 0xE0EEEE, 0xE0EEB3, 0xE03343, 0xE03333,
0xE03333, 0xE03333, 0xE0CDCB, 0xE0CBCB, 0xE0BCBC, 0xE0CCCC, 0xE0BABB, 0xE0CBCD,
0xE0CCCC, 0xE0CEEC, 0xE0DEED, 0xE0BCCE, 0xE0EEEE, 0xE0EEE2, 0xE03333, 0xE03333,
0xE03333, 0xE03332, 0xE0DCAC, 0xE0BBBA, 0xE0BCBC, 0xE0CCCC, 0xE0CBBC, 0xE0CBCD,
0xE0DCDD, 0xE0EEEE, 0xE0EEEE, 0xE0DDDE, 0xE0DEEE, 0xE0EEE7, 0xE03343, 0xE03333,
0xE03333, 0xE03337, 0xE0BBBC, 0xE0CBBA, 0xE0BBBB, 0xE0CBBD, 0xE0CCBB, 0xE0BABD,
0xE0DEDE, 0xE0EEEE, 0xE0EEEE, 0xE0EEEE, 0xE0EEEE, 0xE0EEEC, 0xE04333, 0xE03333,
0xE03333, 0xE0333A, 0xE0CBBB, 0xE0AAAA, 0xE0AABB, 0xE0BCCD, 0xE0CCBA, 0xE0ABCD,
0xE0EEDE, 0xE0DEEE, 0xE0EEEE, 0xE0EEEE, 0xE0EEEE, 0xE0EEDD, 0xE06333, 0xE04333,
0xE03333, 0xE0334A, 0xE0BBBB, 0xE0A9AA, 0xE0AAAB, 0xE0CCBC, 0xE0DBBA, 0xE0BCCD,
0xE0EDED, 0xE0EEEE, 0xE0EEEE, 0xE0EEEE, 0xE0EEEE, 0xE0EEED, 0xE07343, 0xE03333,
0xE03333, 0xE0334B, 0xE0ABBB, 0xE0999A, 0xE0AAAB, 0xE0BBAB, 0xE0CBBC, 0xE0CDDD,
0xE0DEDE, 0xE0EDEE, 0xE0EEEE, 0xE0DEEE, 0xE0EDEE, 0xE0EEDE, 0xE0B333, 0xE03333,
0xE03333, 0xE0336A, 0xE0ABBA, 0xE0999A, 0xE0A9AB, 0xE0AABB, 0xE0CBAB, 0xE0CCCC,
0xE0DDED, 0xE0EEDE, 0xE0DDEE, 0xE0DEEE, 0xE0EEDE, 0xE0EEED, 0xE0B434, 0xE03333,
0xE03333, 0xE03349, 0xE09BB9, 0xE05999, 0xE09AAB, 0xE0AABB, 0xE0BBAB, 0xE0DCCC,
0xE0CDDD, 0xE0EDDE, 0xE0EEDE, 0xE0DEEE, 0xE0EDEE, 0xE0EEEE, 0xE0C433, 0xE03333,
0xE03333, 0xE03345, 0xE09BA5, 0xE09599, 0xE09AAA, 0xE0ABBB, 0xE0BBBA, 0xE0BBBB,
0xE0CDDD, 0xE0DDDD, 0xE0DDEE, 0xE0DEEE, 0xE0EDEE, 0xE0EEED, 0xE0D434, 0xE03333,
0xE03333, 0xE03348, 0xE05BA9, 0xE05999, 0xE09A9A, 0xE0ABBC, 0xE0BBB9, 0xE0ABCC,
0xE0DDDD, 0xE0DDDE, 0xE0DDEE, 0xE0EDEE, 0xE0DEED, 0xE0EEED, 0xE0D633, 0xE03333,
0xE03333, 0xE03348, 0xE059AA, 0xE05959, 0xE09AAA, 0xE0ABCB, 0xE0CCBA, 0xE0ABCC,
0xE0DDDC, 0xE0CDDE, 0xE0DDEE, 0xE0EDEE, 0xE0EEEE, 0xE0EEED, 0xE0E634, 0xE03333,
0xE03333, 0xE03338, 0xE089A9, 0xE05999, 0xE0999A, 0xE0ABBC, 0xE0CBBA, 0xE0BBCD,
0xE0CDCD, 0xE0DDDD, 0xE0DDDE, 0xE0EEEE, 0xE0EEED, 0xE0EDEE, 0xE0D633, 0xE03333,
0xE03333, 0xE03336, 0xE08559, 0xE09599, 0xE059AA, 0xE0ACCC, 0xE0CBAB, 0xE0BACD,
0xE0DCDC, 0xE0DCDC, 0xE0DEEE, 0xE0EEEE, 0xE0EEED, 0xE0EEDE, 0xE0E434, 0xE03333,
0xE03333, 0xE03334, 0xE08855, 0xE05599, 0xE09AAB, 0xE0BBCD, 0xE0CBAA, 0xE0BBCC,
0xE0BBCC, 0xE0CDDD, 0xE0DEEE, 0xE0EEEE, 0xE0EEDD, 0xE0DEEE, 0xE0D433, 0xE03333,
0xE03333, 0xE03333, 0xE08885, 0xE05595, 0xE0599B, 0xE0BCCC, 0xE0BCBC, 0xE0BCBA,
0xE0ABBB, 0xE0BDDD, 0xE0DDEE, 0xE0EEEE, 0xE0EDDE, 0xE0EDDE, 0xE0D343, 0xE03333,
0xE03333, 0xE03333, 0xE04888, 0xE05555, 0xE0999B, 0xE0BBCB, 0xE0BBCB, 0xE0BCBC,
0xE0BBAA, 0xE0BBCC, 0xE0DEEE, 0xE0EEEE, 0xE0EEED, 0xE0EDEE, 0xE0B334, 0xE03333,
0xE03333, 0xE03333, 0xE04688, 0xE05595, 0xE05559, 0xE0ABAB, 0xE0CBBA, 0xE0ACBC,
0xE0BCAB, 0xE0ABBB, 0xE0CEEE, 0xE0EEEE, 0xE0EEED, 0xE0DEDE, 0xE07333, 0xE03333,
0xE03333, 0xE03333, 0xE03468, 0xE08595, 0xE09999, 0xE099AB, 0xE0AAAA, 0xE0AAAA,
0xE0BABA, 0xE0AAAB, 0xE0CEEE, 0xE0EEEE, 0xE0EEED, 0xE0EDEE, 0xE02333, 0xE03333,
0xE03333, 0xE03333, 0xE03468, 0xE08995, 0xE05999, 0xE0AAAA, 0xE0AAAA, 0xE0AA9A,
0xE0AABA, 0xE0AAAB, 0xE0CEEE, 0xE0EEEE, 0xE0EEDE, 0xE0DEED, 0xE04333, 0xE03333,
0xE03333, 0xE03333, 0xE03346, 0xE08555, 0xE08599, 0xE0BBA9, 0xE0A9AA, 0xE0A99A,
0xE0BAAB, 0xE0AAAB, 0xE0CDEE, 0xE0EEEE, 0xE0EEDE, 0xE0DEE7, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03336, 0xE06888, 0xE08589, 0xE0AB99, 0xE0999A, 0xE0BA9A,
0xE0CABB, 0xE0AABC, 0xE0CDEE, 0xE0EEEE, 0xE0EDDD, 0xE0DEE6, 0xE03433, 0xE03333,
0xE03333, 0xE03333, 0xE03334, 0xE04688, 0xE08855, 0xE05999, 0xE05599, 0xE0AA9A,
0xE0BBBB, 0xE0BBBD, 0xE0DDED, 0xE0EEEE, 0xE0DDDD, 0xE0DEB3, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE04668, 0xE08888, 0xE08555, 0xE05559, 0xE05595,
0xE0ABAA, 0xE0ABCC, 0xE0DDDD, 0xE0DDDE, 0xE0DEED, 0xE0EC63, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03466, 0xE06688, 0xE08888, 0xE05855, 0xE05599,
0xE0ABAA, 0xE0ABBB, 0xE0CCCD, 0xE0DDDD, 0xE0DDED, 0xE0C833, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03346, 0xE06888, 0xE08885, 0xE08555, 0xE09999,
0xE05A9A, 0xE0BAAB, 0xE0CCCC, 0xE0CCDC, 0xE0CDCC, 0xE07333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03334, 0xE04668, 0xE08888, 0xE08585, 0xE09AA5,
0xE05859, 0xE0BAAB, 0xE0BCCC, 0xE0BCCC, 0xE0CCCA, 0xE04333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE04666, 0xE08888, 0xE08885, 0xE09AA5,
0xE05559, 0xE0ABBB, 0xE0CBCB, 0xE0CBBC, 0xE0BB74, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03446, 0xE06668, 0xE08885, 0xE05995,
0xE05555, 0xE0AABB, 0xE0BBBB, 0xE0ABBB, 0xE0B963, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03344, 0xE04668, 0xE06885, 0xE059A9,
0xE095AA, 0xE0A99B, 0xE0AAA9, 0xE0AAB9, 0xE08433, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03334, 0xE04666, 0xE08885, 0xE08599,
0xE09AAA, 0xE099A9, 0xE09999, 0xE09986, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03346, 0xE08888, 0xE05559,
0xE09AA9, 0xE09955, 0xE09555, 0xE08843, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03334, 0xE04628, 0xE08885,
0xE05855, 0xE08888, 0xE08886, 0xE04333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03334, 0xE06888,
0xE08888, 0xE08886, 0xE04433, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03343,
0xE04343, 0xE04333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333, 0xE03333,
};
Everything up through the palette was fine, but the body can't possibly be right - the values aren't even u16's! So I tried the Windows executable... same exact output. So I looked at the source closely...
Code: Select all
while (offset < len) do begin
ss:= '';
for ii:= 0 to ((16 div formatint) - 1) do begin
if (MemInput.Read(jj, formatint) <> 0) then ss:= ss + '0x' + IntToHex(jj, 2 * formatint) + ', '
end;
Inc(offset, 16);
FileOutput.Add(#9 + ss);
end;
I had a hunch and did this
Code: Select all
while (offset < len) do begin
ss:= '';
for ii:= 0 to ((16 div formatint) - 1) do begin
jj := 0;
if (MemInput.Read(jj, formatint) <> 0) then ss:= ss + '0x' + IntToHex(jj, 2 * formatint) + ', '
end;
Inc(offset, 16);
FileOutput.Add(#9 + ss);
end;
and now I get this output
Code: Select all
#include "genesis.h"
const u16 moon[0x0412] = {
0x0040, 0x0040,
0x0000, 0x0EEE, 0x0442, 0x0000, 0x0420, 0x0A42, 0x0422, 0x0866, 0x0842, 0x0A64, 0x0C64, 0x0C86, 0x0CA8, 0x0ECC, 0x0EEE, 0x0EEE,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x4333,
0x3343, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3433, 0x4333, 0x3333,
0x3333, 0x3334, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x4466,
0x6443, 0x3333, 0x3343, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3334, 0x3333, 0x27BD, 0xDEEE,
0xEDDC, 0xB763, 0x3333, 0x3334, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x347C, 0xEEEE, 0xEEEE,
0xDDCC, 0xCDDD, 0x7633, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3334, 0x7DED, 0xDEEE, 0xEEEE,
0xDCBB, 0xBBDD, 0xDDB6, 0x3433, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3343, 0x347D, 0xEEEE, 0xEDEE, 0xEEED,
0xDDDC, 0xBBCE, 0xDDDD, 0x7433, 0x4333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x2DEE, 0xEEED, 0xEDEE, 0xEEED,
0xEEEE, 0xEEEE, 0xEDCC, 0xEC23, 0x3343, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3347, 0xEEED, 0xDDCC, 0xCCDE, 0xEEDE,
0xEDEE, 0xDDDC, 0xCBBC, 0xDDDB, 0x4333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x33BE, 0xECCC, 0xDDDC, 0xCDEE, 0xEEDC,
0xCCCB, 0xCCCC, 0xBBCB, 0xCDEE, 0xB433, 0x3433, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x4BED, 0xCCCD, 0xCDCC, 0xCDCC, 0xDDDC,
0xBBAB, 0xBCCC, 0xBBBB, 0xBDED, 0xEC43, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x7EDD, 0xCCCD, 0xCCCC, 0xBBAA, 0xBCCC,
0xBBAB, 0xBBBC, 0xCBBB, 0xBCDD, 0xDEB4, 0x3343, 0x3333, 0x3333,
0x3333, 0x3333, 0x3337, 0xEDDC, 0xCDDD, 0xCDCB, 0xBCBB, 0xBABB,
0xBAAA, 0xBBBC, 0xCCBC, 0xCBCC, 0xDDEB, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x336E, 0xEDCC, 0xCCDD, 0xDCBB, 0xBBBA, 0xBBBB,
0xABAB, 0xBBDD, 0xDDDC, 0xCCDD, 0xCEDE, 0x2343, 0x3333, 0x3333,
0x3333, 0x3333, 0x33DE, 0xDCCC, 0xCDDD, 0xCBBB, 0xABCB, 0xBBBA,
0xBBAA, 0xBBDE, 0xDEEE, 0xEDDD, 0xDEEE, 0xE434, 0x3333, 0x3333,
0x3333, 0x3333, 0x37EE, 0xCCBC, 0xCDDD, 0xCBAB, 0xBBBB, 0xBBBA,
0xABBB, 0xBBCD, 0xDDEE, 0xEEED, 0xCDEE, 0xEB33, 0x3333, 0x3333,
0x3333, 0x3333, 0x4DED, 0xBCDD, 0xDCDC, 0xDBBB, 0xABAA, 0xCCCA,
0xAABB, 0xBBBC, 0xDDDB, 0xCEDD, 0xDEEE, 0xEE23, 0x4333, 0x3333,
0x3333, 0x3333, 0x7ECC, 0xBCDC, 0xCCCC, 0xBCBB, 0xAAAB, 0xCCCB,
0xBBBB, 0xCCDC, 0xCCDC, 0xCCCD, 0xEEEE, 0xEEB3, 0x3343, 0x3333,
0x3333, 0x3333, 0xCDCB, 0xCBCB, 0xBCBC, 0xCCCC, 0xBABB, 0xCBCD,
0xCCCC, 0xCEEC, 0xDEED, 0xBCCE, 0xEEEE, 0xEEE2, 0x3333, 0x3333,
0x3333, 0x3332, 0xDCAC, 0xBBBA, 0xBCBC, 0xCCCC, 0xCBBC, 0xCBCD,
0xDCDD, 0xEEEE, 0xEEEE, 0xDDDE, 0xDEEE, 0xEEE7, 0x3343, 0x3333,
0x3333, 0x3337, 0xBBBC, 0xCBBA, 0xBBBB, 0xCBBD, 0xCCBB, 0xBABD,
0xDEDE, 0xEEEE, 0xEEEE, 0xEEEE, 0xEEEE, 0xEEEC, 0x4333, 0x3333,
0x3333, 0x333A, 0xCBBB, 0xAAAA, 0xAABB, 0xBCCD, 0xCCBA, 0xABCD,
0xEEDE, 0xDEEE, 0xEEEE, 0xEEEE, 0xEEEE, 0xEEDD, 0x6333, 0x4333,
0x3333, 0x334A, 0xBBBB, 0xA9AA, 0xAAAB, 0xCCBC, 0xDBBA, 0xBCCD,
0xEDED, 0xEEEE, 0xEEEE, 0xEEEE, 0xEEEE, 0xEEED, 0x7343, 0x3333,
0x3333, 0x334B, 0xABBB, 0x999A, 0xAAAB, 0xBBAB, 0xCBBC, 0xCDDD,
0xDEDE, 0xEDEE, 0xEEEE, 0xDEEE, 0xEDEE, 0xEEDE, 0xB333, 0x3333,
0x3333, 0x336A, 0xABBA, 0x999A, 0xA9AB, 0xAABB, 0xCBAB, 0xCCCC,
0xDDED, 0xEEDE, 0xDDEE, 0xDEEE, 0xEEDE, 0xEEED, 0xB434, 0x3333,
0x3333, 0x3349, 0x9BB9, 0x5999, 0x9AAB, 0xAABB, 0xBBAB, 0xDCCC,
0xCDDD, 0xEDDE, 0xEEDE, 0xDEEE, 0xEDEE, 0xEEEE, 0xC433, 0x3333,
0x3333, 0x3345, 0x9BA5, 0x9599, 0x9AAA, 0xABBB, 0xBBBA, 0xBBBB,
0xCDDD, 0xDDDD, 0xDDEE, 0xDEEE, 0xEDEE, 0xEEED, 0xD434, 0x3333,
0x3333, 0x3348, 0x5BA9, 0x5999, 0x9A9A, 0xABBC, 0xBBB9, 0xABCC,
0xDDDD, 0xDDDE, 0xDDEE, 0xEDEE, 0xDEED, 0xEEED, 0xD633, 0x3333,
0x3333, 0x3348, 0x59AA, 0x5959, 0x9AAA, 0xABCB, 0xCCBA, 0xABCC,
0xDDDC, 0xCDDE, 0xDDEE, 0xEDEE, 0xEEEE, 0xEEED, 0xE634, 0x3333,
0x3333, 0x3338, 0x89A9, 0x5999, 0x999A, 0xABBC, 0xCBBA, 0xBBCD,
0xCDCD, 0xDDDD, 0xDDDE, 0xEEEE, 0xEEED, 0xEDEE, 0xD633, 0x3333,
0x3333, 0x3336, 0x8559, 0x9599, 0x59AA, 0xACCC, 0xCBAB, 0xBACD,
0xDCDC, 0xDCDC, 0xDEEE, 0xEEEE, 0xEEED, 0xEEDE, 0xE434, 0x3333,
0x3333, 0x3334, 0x8855, 0x5599, 0x9AAB, 0xBBCD, 0xCBAA, 0xBBCC,
0xBBCC, 0xCDDD, 0xDEEE, 0xEEEE, 0xEEDD, 0xDEEE, 0xD433, 0x3333,
0x3333, 0x3333, 0x8885, 0x5595, 0x599B, 0xBCCC, 0xBCBC, 0xBCBA,
0xABBB, 0xBDDD, 0xDDEE, 0xEEEE, 0xEDDE, 0xEDDE, 0xD343, 0x3333,
0x3333, 0x3333, 0x4888, 0x5555, 0x999B, 0xBBCB, 0xBBCB, 0xBCBC,
0xBBAA, 0xBBCC, 0xDEEE, 0xEEEE, 0xEEED, 0xEDEE, 0xB334, 0x3333,
0x3333, 0x3333, 0x4688, 0x5595, 0x5559, 0xABAB, 0xCBBA, 0xACBC,
0xBCAB, 0xABBB, 0xCEEE, 0xEEEE, 0xEEED, 0xDEDE, 0x7333, 0x3333,
0x3333, 0x3333, 0x3468, 0x8595, 0x9999, 0x99AB, 0xAAAA, 0xAAAA,
0xBABA, 0xAAAB, 0xCEEE, 0xEEEE, 0xEEED, 0xEDEE, 0x2333, 0x3333,
0x3333, 0x3333, 0x3468, 0x8995, 0x5999, 0xAAAA, 0xAAAA, 0xAA9A,
0xAABA, 0xAAAB, 0xCEEE, 0xEEEE, 0xEEDE, 0xDEED, 0x4333, 0x3333,
0x3333, 0x3333, 0x3346, 0x8555, 0x8599, 0xBBA9, 0xA9AA, 0xA99A,
0xBAAB, 0xAAAB, 0xCDEE, 0xEEEE, 0xEEDE, 0xDEE7, 0x3333, 0x3333,
0x3333, 0x3333, 0x3336, 0x6888, 0x8589, 0xAB99, 0x999A, 0xBA9A,
0xCABB, 0xAABC, 0xCDEE, 0xEEEE, 0xEDDD, 0xDEE6, 0x3433, 0x3333,
0x3333, 0x3333, 0x3334, 0x4688, 0x8855, 0x5999, 0x5599, 0xAA9A,
0xBBBB, 0xBBBD, 0xDDED, 0xEEEE, 0xDDDD, 0xDEB3, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x4668, 0x8888, 0x8555, 0x5559, 0x5595,
0xABAA, 0xABCC, 0xDDDD, 0xDDDE, 0xDEED, 0xEC63, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3466, 0x6688, 0x8888, 0x5855, 0x5599,
0xABAA, 0xABBB, 0xCCCD, 0xDDDD, 0xDDED, 0xC833, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3346, 0x6888, 0x8885, 0x8555, 0x9999,
0x5A9A, 0xBAAB, 0xCCCC, 0xCCDC, 0xCDCC, 0x7333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3334, 0x4668, 0x8888, 0x8585, 0x9AA5,
0x5859, 0xBAAB, 0xBCCC, 0xBCCC, 0xCCCA, 0x4333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x4666, 0x8888, 0x8885, 0x9AA5,
0x5559, 0xABBB, 0xCBCB, 0xCBBC, 0xBB74, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3446, 0x6668, 0x8885, 0x5995,
0x5555, 0xAABB, 0xBBBB, 0xABBB, 0xB963, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3344, 0x4668, 0x6885, 0x59A9,
0x95AA, 0xA99B, 0xAAA9, 0xAAB9, 0x8433, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3334, 0x4666, 0x8885, 0x8599,
0x9AAA, 0x99A9, 0x9999, 0x9986, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3346, 0x8888, 0x5559,
0x9AA9, 0x9955, 0x9555, 0x8843, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3334, 0x4628, 0x8885,
0x5855, 0x8888, 0x8886, 0x4333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3334, 0x6888,
0x8888, 0x8886, 0x4433, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3343,
0x4343, 0x4333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333, 0x3333,
};
What do ya know! Apparently MemInput.Read only writes over as many bytes as you tell it, leaving the rest alone. Combine that with IntToHex ignoring the length if there's more data and you get the wrong output seen at the top.