That's the reason I would announce this feature as experimental only for this version. Plain BASIC programs are translated quite good but you should be careful when using the disassembly feature. Normally there have to be defined one or more entry points (addresses) for the disassembler but it takes just one address only and continue disassembling even after a RET or JP orJR instruction while there could be some data as well.
I hope this could be solved in a later version. If there are any other tools around for cross-disassembling, running under x86 processors or even under WIN please give a hint also to test it. I will put a sample zip in the tutorial thread with some tested programs, mostly plain BASIC but a few with assembly code as well. Please for any questions or hints please answer here and not in the tutorial thread (as this is just the manual). Thanks.
Details here: http://board.flatassembler.net/topic.ph ... 441#185441
Using a macro is one solution but I would prefer doing jumps manually.
As a good rule a JR should not be run over more than 1 or 2 display pages and in doubt I would use JP which is fast as well (10 clock cycles instead of 12 cycles) and uses one byte more but normally that shouldn't be a problem. Sometimes I only use JP for jumping in my programs or use JR only for anonymous label (@@) where I would give a stronger rule - no jump over more than one display page for such a jump to avoid strange results. Anyway I find anonymous labels quite useful for routines to do a short jump without defining a label.
If I could set the processor's program counter to the start point without going into basic at all it would save memory and I could use some of the system variables space without crashing the machine. I've already got it not using REM lines for code, so saving a bit there. My program is at 951 bytes and says I'm out of memory when I should have a few more bytes left.
Is there any way to start the ZX81 program without using a RAND USR line?