From: SourceForge.net <no...@so...> - 2005-05-05 07:31:48
|
Bugs item #1195691, was opened at 2005-05-05 07:12 Message generated for change (Comment added) made by maartenbrock You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=1195691&group_id=599 Category: assembler Group: None Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: Z80 assembler does not support 'CP <byte>' opcode Initial Comment: I'm trying to use as-z80 from sdcc 2.4.0 to build a very simple assembly program. The code in question looks like this: BKSP = 0x08 START: call CLS LOOP: call GETCH ld A,H bit 0,L jp Z,DISPLAY cp BKSP ; This line causes an error. jp NZ,LOOP xor A ret The assembler fails with the following error on the 'cp' opcode: Error: <a> machine specific addressing or addressing mode error My reading of the various Z80 materials I've found online suggests that this is a perfectly valid opcode and addressing mode (compiling to FE<byte>). The same code compiles fine on other assemblers (crasm, z80-asm). th...@ya... ---------------------------------------------------------------------- >Comment By: Maarten Brock (maartenbrock) Date: 2005-05-05 09:31 Message: Logged In: YES user_id=888171 I'm not sure but I think this is what's going on. Immediate operands are represented as #n in as-z80. Try: BKSP = #0x08 cp BKSP Please report back with your results. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=100599&aid=1195691&group_id=599 |