|
![](/i/fill.gif) |
I am looking for a free C++ compiler that is 100% compatible with Win Vista Home
Premium 64 bit... and is free of bugs. For now this could be a SIMPLE
programming tool, as long as it can manipulate random access files up to 2 Gb
in length.
I might consider another language. It could even be an interpreter. It doesn't
have to be "fast".
Failing that, if someone *already has* a Vista compatible compiler installed,
you could maybe build, test, finalize this? I'm sure the community would then
be grateful if you distribute it.
===== ===== ===== ===== =====
For now, I need to be able to build a program(s) that can:
(a) Create a "blank" (filled with zeros... preceeded by the 6 byte header) DF3
file given the dimensions (x,y,z). Probably, it should do some checking...
refuse to create a .DF3 exceeding 2 Gb in size, refuse to create one where the
dimensions don't make sense (example X = -237 voxels, Y = 1 voxel, Z =
"CatSaliva" voxels). SIMPLE error checking.
(b) Write into a DF3 file given the dimensions, (3D) offsets and data (the
dimensions, of course are imbedded in the header data anyway... strictly
speaking, input from the user is not required, but some error checking should
be done). Maybe "fed" by a text file... running the program, you specify a
..DF3, it reads the header from the .DF3 and tells the user (just FYI) what the
dimensions are.. then you specify a .TXT file containing X Y Z coords and data.
The .TXT file could contain data of the form:
(x, y, z, data)
....
52 134 63 255
53 135 64 208
....
2 255 128 1
....
As indicated, the 3D coords shouldn't HAVE TO BE consecutive. A halt-on-error
and close-all-files should be done if there is an error (A .DF3 of 256x256x256,
but you specify an X-coord of > 255, values that are meaningless / typos, a data
value that exceeds 8, 16, 32 bits).
UNmandatory nice to have Bells and whistles...
(1) Can handle 8, 16, 32 bit DF3s. I consider this *fairly* important.
(2) Ranges can be either 0 to MaxDimension-1, *or* 1 to MaxDimension. IE you
have a 256x256x256 .DF3, and the text file can specify coords as 0 to 255, and
used as-is. *OR*; coords 1 to 256. Based on query / user input. The program
itself takes care of adjusting things. BTW (based on my own experiments... I am
using a HEX EDITOR at present on DF3s, to quote a passage from "The Fly",
"HEEeellpp MEeeee!") the coords / offsets should be converted:
(simple example, 10x10x10 DF3);
example User input = "use 1 to MaxDimension"
offset into DF3 = (x-1) + ((y-1)*10) + ((z-1)*100) (or ((z-1)*10*10))
(simple example, 100x100x100)
example User input = "use 1 to MaxDimension"
offset into DF3 = x + (Y*100) + (z*100000) ( ... or z*100*100)
.... doing it this way, I know that the orientations are correct, from
experiments I've done.
This particular "Bell Whistle" isn't that important.
(2) READ a DF3, print to text file? Not that important.
(3) ZERO (or "clear) a DF3... "Fill" a DF3. Zero = not that important. One could
always just delete a DF3 that was "hosed up" and re-do the work. FILL a DF3 with
other-than-zeros? Dunno... there might be a need sometime.
(4) Anthing else nice-to-have (add to the thread).
===== ===== ===== ===== =====
Okay - I've checked on a few... there was ONE reference that a certain version
of the Bloodshed C++ system is Vista compatible. Long story short: after
reading some online docs, I just don't want to trust it; the ONE reference was
a comment in a forum and it is suspect.
I've checked on Microsoft Visual C++ Express. Free, but you have to register it
(to use it past 30 days), and to register it you need a "Microsoft Live ID". (I
hate to keep track of those things). Apparantly, there are occasional problems
UNinstalling the product in Vista. The online readme has a "Known Bugs"
section. I hate bugs... we ALL hate bugs. "Known" bugs? EXECUTE them (no I
don't mean "run" them... I mean use the headsman's AXE! There shouldn't be any
"KNOWN" bugs!)
Any advice would be appreciated... reminder, I have Win Vista Home Premium *64
bit*.
Failing that... again, if anyone is equipped to do so, maybe someone could build
these two apps? (I indicated 2 major functions; 1 to create a DF3, one to
manipulate it, but there isn't any reason these two things couldn't be in the
same app).
- Thanks
- Jeff
Post a reply to this message
|
![](/i/fill.gif) |