I want it to convert name.bin to name.cas. So that name.bin and name.cas are left after the conversion.
If I were then to convert the exact same name.bin to name.cas again, DrBinCas would simply overwrite the existing copy of name.cas with another name.cas which was exactly the same as the previous one.
Well, I finally implemented all the changes, so here you have it!
As usual, please tell me if you find any error. A Windows binary and the source file are provided. I haven't had time to compile it on Mac or Linux, but should work right away. Still not sure that everything will work if compiled on a processor with a different endian, like a PowerPC one.
Version 02 works perfectly, but v04 crashes every time. The only time it doesn't crash is if you just enter "drbincas" without arguments. I have attached the WinXP error report.
Hi Rob,
FYI your program works well on Linux. I am pretty sure it is broken on big-endian architectures such as PowerPC though, due to the casting of short int to array of chars and getting LSB/MSB using "nameBlock[14] = pLoadAdd[1];". You could use loadAdd & 0xFF and loadAdd >> 8 instead.
Did I ever send you this patch (Allow hexadecimal load/exec address)?
Anyway, I mostly use makewav from ToolShed now, which can write CAS files as well (-k option).