ZX81-IDE Software Development Tool, IDE

Any discussions related to the creation of new hardware or software for the ZX80 or ZX81
User avatar
PokeMon
Posts: 2264
Joined: Sat Sep 17, 2011 6:48 pm

Re: ZX81-IDE Software Development Tool, IDE

Post by PokeMon »

I replaced the latest version through the slightly modificated version 1.71.01n.Z80 which does support code areas in VAR section.
Read more in the tutorial thread. ;)
User avatar
PokeMon
Posts: 2264
Joined: Sat Sep 17, 2011 6:48 pm

Re: ZX81-IDE Software Development Tool, IDE

Post by PokeMon »

I finally made some modifications and uploaded now version 1.71.01p.Z80 of the ZX-IDE to support the .p file converter tool. The so called P2A feature can read .p or .81 program files and translate them to source which can be read, recompiled or changed before compiling. This should be the planned behaviour. But the implemented tool ZX lister from David has some problems when disassembling possibly contained assembly parts in such a program. So all found code would be interpreted as code as it could be data or mixed code/data areas as well.

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. ;)
User avatar
marste
Posts: 250
Joined: Sun Aug 10, 2014 9:58 pm
Location: Italy
Contact:

Re: ZX81-IDE Software Development Tool, IDE

Post by marste »

For information I posted a question on fasm forum regarding the implementation of an helper for JR selection automation (when possible instead of JP),

Details here: http://board.flatassembler.net/topic.ph ... 441#185441
User avatar
PokeMon
Posts: 2264
Joined: Sat Sep 17, 2011 6:48 pm

Re: ZX81-IDE Software Development Tool, IDE

Post by PokeMon »

Yes I saw that.
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.
Bukster
Posts: 93
Joined: Wed Sep 12, 2018 9:44 am

Re: ZX81-IDE Software Development Tool, IDE

Post by Bukster »

I've been doing some ZX81 work with Flat Assembler and am working on a 1K game. However with 1K every byte counts and I haven't seen any examples or documentation where I can make the program go straight to the USR routines without ever using ZX81 basic. So under Autorun I have to have the command RAND USR #START

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?
Post Reply