I'm trying to create a post-processor for a really old CNC Machine, a BANDIT 8300. This machine does use a dinosaur version of GCode with a lot of details that differ from more recent machine's more standardized GCode as covered by the configuration visible GCodeBase.js.
To get the BANDIT to work, I'd need deeper customisation. As it is also a bit of a reverse engineering thing (the BANDIT's docs are not so clear on the G-Code level), I'm not yet sure about everything I'll need in the end, but at the moment the obstacles are:
- All numbers need to have a decimal point, even if all fractional digits are 0 (because if the decimal point is missing, the machine interprets the number as 1/1000th mm. Example 5.5 -> 5.5mm, 5. -> 5mm, but 5 -> 0.005mm).
- G2/G3 do not work as in newer G-Codes, these are for quarter and full circles only. There is a different syntax for partial arcs, but these must remain within a single quadrant. So I probably need to override arcExport() to split longer arcs at quadrant borders.
- There are no G0 and G1 commands. The differentiation between rapid and "contour" moves is done by using IJK for rapid moves. So I'd need a way to output "xPosition"/"yPosition" as IJ.
Thanks for any hints how I can proceed to get that nice old BANDIT run QCAD output!