User Tools

Site Tools


base:6502_6510_coding

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
base:6502_6510_coding [2017-11-17 15:35] – [Illegal opcode tricks] cruzerbase:6502_6510_coding [2023-10-20 08:14] (current) – huh, it's not actually that slow compared to others' attempt white_flame
Line 7: Line 7:
   * [[base:mc_al#bg_-_part_one|Beginners guide - Part 1]] - Beginners guide to machine-code and assembly-language for the 6510 by Rudi B. Stranden   * [[base:mc_al#bg_-_part_one|Beginners guide - Part 1]] - Beginners guide to machine-code and assembly-language for the 6510 by Rudi B. Stranden
   * [[base:machine_language_tutorial|Machine language tutorial]] - An incomplete series about 6510 machine language written by Karmic/HVSC.   * [[base:machine_language_tutorial|Machine language tutorial]] - An incomplete series about 6510 machine language written by Karmic/HVSC.
 +  * [[TurboAssembler 5.2 (Bacchus Version)]] — This may be useful if you plan to code on the C64 itself. Reference document by Bacchus/FLT.
 +  * [[http://forum.6502.org/viewtopic.php?f=2&t=6796|HeyMon]] - If all else fails, here's an 86-line BASIC monitor to type in, with assembler and disassembler, by White Flame.
 ====== Instruction set and Addressing modes ====== ====== Instruction set and Addressing modes ======
  
Line 41: Line 43:
  
   * [[Extra Instructions Of The 65XX Series CPU]] - Overview article by Adam Vardy from 1995 - quite old by now   * [[Extra Instructions Of The 65XX Series CPU]] - Overview article by Adam Vardy from 1995 - quite old by now
-  * {{:base:nomoresecrets-nmos6510unintendedopcodes-20142412.pdf|No More Secrets}} - Documentation of unintended opcodes by Groepaz (Version 2014-12-24).+  * {{:base:nomoresecrets-nmos6510unintendedopcodes-20212412.pdf|No More Secrets 0.96}} - Documentation of unintended opcodes by Groepaz (2021-24-12 version). ([[https://csdb.dk/release/?id=212346|No More Secrets 0.96 @CSDb]]) 
 ==== Illegal opcode tricks ==== ==== Illegal opcode tricks ====
 A collection articles and routines that exemplify particular aspects of some illegal opcode. A collection articles and routines that exemplify particular aspects of some illegal opcode.
Line 57: Line 60:
    * [[base:memconfig|Memory Management]] - 00 and 01 can be used to switching on/off BASIC, KERNAL, and CHAR ROM.    * [[base:memconfig|Memory Management]] - 00 and 01 can be used to switching on/off BASIC, KERNAL, and CHAR ROM.
    * [[Datasette]]    * [[Datasette]]
-   * [[Unused Bits]] - The upper, unused bits show some unexpected behavior. FIXME 
    * [[RAM beneath $00 and $01]]    * [[RAM beneath $00 and $01]]
  
Line 68: Line 70:
   * [[Speeding up and optimising demo routines]] - by conrad   * [[Speeding up and optimising demo routines]] - by conrad
   * [[Speedcode]] by Cruzer/CML   * [[Speedcode]] by Cruzer/CML
-  * [[Loops vs unrolled]] by Bitbreaker/Oxyron^Nuance +  * [[Loops vs unrolled]] by Bitbreaker/Performers^Nuance 
-  * [[Advanced optimizing]] - Tricks to save cycles, including use of illegal opcodes - by Bitbreaker/Oxyron^Nuance +  * [[Advanced optimizing]] - Tricks to save cycles, including use of illegal opcodes - by Bitbreaker/Performers^Nuance 
-  * [[Launching long tasks from IRQ handler]] - by Bitbreaker/Oxyron^Nuance +  * [[Launching long tasks from IRQ handler]] - by Bitbreaker/Performers^Nuance 
-  * [[Variable speedcode runlength]] - by Bitbreaker/Oxyron*+  * [[Variable speedcode runlength]] - by Bitbreaker/Performers^Nuance
   * [[Practical Memory Move Routines]] - by Bruce Clark  - taken from [[http://www.6502.org|www.6502.org]]   * [[Practical Memory Move Routines]] - by Bruce Clark  - taken from [[http://www.6502.org|www.6502.org]]
   * [[Clearing a Section of Memory]] - from 6502 Software Gourmet Guide & Cookbook - taken from [[http://www.6502.org|www.6502.org]]   * [[Clearing a Section of Memory]] - from 6502 Software Gourmet Guide & Cookbook - taken from [[http://www.6502.org|www.6502.org]]
base/6502_6510_coding.1510929356.txt.gz · Last modified: 2017-11-17 15:35 by cruzer