Talk:Programming with unofficial opcodes: Difference between revisions
(→Stability of ATX: It might be LAX too) |
mNo edit summary |
||
Line 2: | Line 2: | ||
[http://anyplatform.net/media/guides/cpus/65xx%20Processor%20Data.txt The reference I'm using] lists ATX as "unstable"; I made a point of leaving "unstable" instructions out of a reference for programmers. Furthermore, it states that its behavior might differ between machines. It cites two references agreeing with you but also cites [http://nesdev.parodius.com/extra_instructions.txt Adam Vardy's document], which calls the instruction "OAL", claims that it includes ORA #$EE as one of the steps, and further claims that different machines use different values instead of $EE. It might actually be ORA <line noise> AND #i TAX, and predictable only if i = 0 (in which case it's no different from LAX #0). --[[User:Tepples|Tepples]] 16:25, 8 February 2011 (UTC) | [http://anyplatform.net/media/guides/cpus/65xx%20Processor%20Data.txt The reference I'm using] lists ATX as "unstable"; I made a point of leaving "unstable" instructions out of a reference for programmers. Furthermore, it states that its behavior might differ between machines. It cites two references agreeing with you but also cites [http://nesdev.parodius.com/extra_instructions.txt Adam Vardy's document], which calls the instruction "OAL", claims that it includes ORA #$EE as one of the steps, and further claims that different machines use different values instead of $EE. It might actually be ORA <line noise> AND #i TAX, and predictable only if i = 0 (in which case it's no different from LAX #0). --[[User:Tepples|Tepples]] 16:25, 8 February 2011 (UTC) | ||
: On IRC, kevtris reported that he has seen a constant $FF as the value in the ORA step, which would put ATX with the LAXs. The difference between $EE and $FF might arise from the lack of decimal mode in the 2A03's ALU. But I'd still recommend against using this instruction because different NES consoles may still interpret it differently. --[[User:Tepples|Tepples]] 04:05, 11 April 2011 (UTC) | : On IRC, kevtris reported that he has seen a constant $FF as the value in the ORA step, which would put ATX with the LAXs. The difference between $EE and $FF might arise from the lack of decimal mode in the 2A03's ALU. But I'd still recommend against using this instruction because different NES consoles may still interpret it differently. --[[User:Tepples|Tepples]] 04:05, 11 April 2011 (UTC) | ||
http://visual6502.org/wiki/index.php?title=6502_Opcode_8B_%28XAA,_ANE%29 strongly implies weirdness with the $10 and $01 bits on all unstable instructions are do to a different period of analog feedback inside the 6502. [[User:Lidnariq|Lidnariq]] 18:59, 11 April 2011 (UTC) |
Revision as of 18:59, 11 April 2011
Stability of ATX
The reference I'm using lists ATX as "unstable"; I made a point of leaving "unstable" instructions out of a reference for programmers. Furthermore, it states that its behavior might differ between machines. It cites two references agreeing with you but also cites Adam Vardy's document, which calls the instruction "OAL", claims that it includes ORA #$EE as one of the steps, and further claims that different machines use different values instead of $EE. It might actually be ORA <line noise> AND #i TAX, and predictable only if i = 0 (in which case it's no different from LAX #0). --Tepples 16:25, 8 February 2011 (UTC)
- On IRC, kevtris reported that he has seen a constant $FF as the value in the ORA step, which would put ATX with the LAXs. The difference between $EE and $FF might arise from the lack of decimal mode in the 2A03's ALU. But I'd still recommend against using this instruction because different NES consoles may still interpret it differently. --Tepples 04:05, 11 April 2011 (UTC)
http://visual6502.org/wiki/index.php?title=6502_Opcode_8B_%28XAA,_ANE%29 strongly implies weirdness with the $10 and $01 bits on all unstable instructions are do to a different period of analog feedback inside the 6502. Lidnariq 18:59, 11 April 2011 (UTC)