mirror of
https://github.com/uffejakobsen/acme.git
synced 2025-01-10 21:30:30 +00:00
docs only
git-svn-id: https://svn.code.sf.net/p/acme-crossass/code-0/trunk@263 4df02467-bbd4-4a76-a152-e7ce94205b78
This commit is contained in:
parent
9d637eee25
commit
8f432f6aa7
@ -102,39 +102,50 @@ of the 65c02. Among the improvements are:
|
|||||||
|
|
||||||
New mnemonics
|
New mnemonics
|
||||||
-------------
|
-------------
|
||||||
02 cop imm8
|
02 cop imm8 coprocessor operation
|
||||||
6b rtl
|
6b rtl return long (fetches 24-bit address from stack)
|
||||||
82 brl rel16
|
82 brl rel16 branch long (16-bit offset)
|
||||||
|
|
||||||
0b phd
|
0b phd push direct page register
|
||||||
2b pld
|
4b phk push program bank register
|
||||||
4b phk
|
8b phb push data bank register
|
||||||
62 per rel16
|
62 per rel16 push effective relative address
|
||||||
8b phb
|
d4 pei (dp) push effective indirect address
|
||||||
ab plb
|
f4 pea abs16 push effective absolute address
|
||||||
d4 pei (dp)
|
|
||||||
f4 pea abs16
|
|
||||||
|
|
||||||
1b tcs
|
2b pld pull direct page register
|
||||||
3b tsc
|
ab plb pull data bank register
|
||||||
5b tcd
|
|
||||||
7b tdc
|
|
||||||
9b txy
|
|
||||||
bb tyx
|
|
||||||
|
|
||||||
eb xba
|
1b tcs transfer C to stack pointer
|
||||||
fb xce
|
3b tsc transfer stack pointer to C
|
||||||
|
5b tcd transfer C to direct page register
|
||||||
|
7b tdc transfer direct page register to C
|
||||||
|
('C' means the whole 16-bit accumulator, even in 8-bit mode)
|
||||||
|
9b txy transfer X to Y
|
||||||
|
bb tyx transfer Y to X
|
||||||
|
|
||||||
42 wdm
|
eb xba exchange high and low bytes of accumulator
|
||||||
|
fb xce exchange Carry and Emulation bits
|
||||||
|
|
||||||
44 mvp src, dst
|
c2 rep #imm8 clear bits in status register
|
||||||
54 mvn src, dst
|
e2 sep #imm8 set bits in status register
|
||||||
|
|
||||||
c2 rep #imm8
|
cb wai wait for interrupt
|
||||||
e2 sep #imm8
|
db stp wait for reset
|
||||||
|
|
||||||
cb wai
|
42 wdm (reserved for future expansion)
|
||||||
db stp
|
|
||||||
|
block transfers:
|
||||||
|
44 mvp src, dst move previous (decrementing addresses)
|
||||||
|
54 mvn src, dst move next (incrementing addresses)
|
||||||
|
the arguments are bank numbers. block size minus one must be in 16-bit
|
||||||
|
accumulator. X holds source address, Y holds target address.
|
||||||
|
after these instructions, data bank register is set to "dst".
|
||||||
|
if blocks overlap:
|
||||||
|
when moving a block to a higher address, use mvp and put the highest
|
||||||
|
addresses in X/Y.
|
||||||
|
when moving a block to a lower address, use mvn and put the lowest
|
||||||
|
adresses in X/Y.
|
||||||
|
|
||||||
New addressing modes for existing mnemonics
|
New addressing modes for existing mnemonics
|
||||||
-------------------------------------------
|
-------------------------------------------
|
||||||
|
Loading…
x
Reference in New Issue
Block a user