User Tools

Site Tools


sd:sd-8516_programmer_s_reference_guide

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
sd:sd-8516_programmer_s_reference_guide [2026/03/30 11:24] appledogsd:sd-8516_programmer_s_reference_guide [2026/03/30 12:07] (current) appledog
Line 18: Line 18:
 === Key Specifications === Key Specifications
 * 16-bit architecture with 16 general-purpose registers * 16-bit architecture with 16 general-purpose registers
-32-bit and 64-bit register pairing system +24-bit addressing with register pairing system
-* Clock speed: **125 MIPS** on a Geekbench 6 baseline system+
 * Memory: 256KB addressable via 4-bank system * Memory: 256KB addressable via 4-bank system
 * ~40× performance improvement over legacy 8510 design * ~40× performance improvement over legacy 8510 design
Line 25: Line 24:
 === Default Performance: === Default Performance:
 * Standard clock speed: 4MHz (1.28 MIPS) * Standard clock speed: 4MHz (1.28 MIPS)
-* Overclocked: max speed ~400 MHz (100+ MIPS) +* Overclocked: 10 MHz (MIPS) 
-* Memory bandwidth: ~540 MB/s+* Memory bandwidth: 16 MB/s
 * Sound system overhead: < 5% CPU time * Sound system overhead: < 5% CPU time
 * Video refresh: 60 Hz (16.67ms frame time) * Video refresh: 60 Hz (16.67ms frame time)
Line 334: Line 333:
 == Appendix 4. Instruction Set Architecture == Appendix 4. Instruction Set Architecture
 * Moved to: [[Appendix 4 Instruction Set Architecture]] * Moved to: [[Appendix 4 Instruction Set Architecture]]
- 
-FIXME 
- 
-more to come! 
- 
-**Examples:** 
-<codify armasm> 
-; ld/st example 
-    LDA #$1234       ; Load immediate $1234 into A 
-    LDAL #$42        ; Load immediate byte $42 into AL 
-    LDA  [$F000]     ; Load word from address $F000 
-    STA [2:$1000]    ; Store A to bank 2, offset $1000 
-</codify> 
- 
-=== Arithmetic Operations 
- 
-|= Instruction |= Description |= Flags Affected | 
-| ADD | Add | Z, N, C, V | 
-| SUB | Subtract | Z, N, C, V | 
-| MUL | Multiply (result in AB) | Z, N | 
-| DIV | Divide (quotient in A, remainder in B) | Z, N | 
-| MOD | Modulo | Z, N | 
-| INC | Increment | Z, N | 
-| DEC | Decrement | Z, N | 
- 
-=== Logic Operations 
-|= Instruction |= Description |= Flags Affected | 
-| AND | Bitwise AND | Z, N | 
-| OR | Bitwise OR | Z, N | 
-| XOR | Bitwise XOR | Z, N | 
-| NOT | Bitwise NOT | Z, N | 
-| TEST | Bitwise AND (no write) | Z, N | 
- 
-=== Shift/Rotate Operations 
- 
-|= Instruction |= Description |= Flags Affected | 
-| SHL | Shift left | Z, N, C | 
-| SHR | Shift right | Z, N, C | 
-| ROL | Rotate left | Z, N, C | 
-| ROR | Rotate right | Z, N, C | 
- 
-=== Comparison & Branching 
- 
-|= Instruction |= Description |= Flags Affected | 
-| CMP | Compare (subtract, discard result) | Z, N, C, V | 
-| JMP | Unconditional jump | None | 
-| JZ | Jump if zero | None | 
-| JNZ | Jump if not zero | None | 
-| JC | Jump if carry set | None | 
-| JNC | Jump if carry clear | None | 
- 
-=== Subroutine Operations 
- 
-|= Instruction |= Description | 
-| CALL | Call subroutine (push IP, jump) | 
-| RET | Return from subroutine (pop IP) | 
-| PUSH | Push register to stack | 
-| POP | Pop from stack to register | 
-| PUSHA | Push all registers | 
-| POPA | Pop all registers | 
-| INT | Software interrupt | 
- 
-=== Flag Operations 
- 
-|= Instruction |= Description | 
-| SSI | Enable Sound System Interrupts | 
-| CSI | Clear Sound System Interrupts | 
-| SEC | Set carry flag | 
-| CLC | Clear carry flag | 
-| SEZ | Set zero flag | 
-| CLZ | Clear zero flag | 
-| SEN | Set negative flag | 
-| CLN | Clear negative flag | 
-| SEV | Set overflow flag | 
-| CLV | Clear overflow flag | 
- 
-=== Other 
- 
-|= Instruction |= Description | 
-| TSX | Transfer SP to register* | 
-| TXS | Transfer register to SP* | 
- 
-* (*) these opcodes were suggested by stackminer from the Fantasy Console 2.0 discord. Thank you, stackminer! 
- 
-=== System Operations 
-|= Instruction |= Description | 
-| CART | Cartridge trigger, used for Cartridge BASIC and others. | 
-| YIELD | Poll UI, System Clock, Sound Chip, Video Chip, and others | 
-| NOP | No operation | 
-| HALT | Halt CPU (set H flag) | 
  
 == Appendix 5. Sound System (SD-450) == Appendix 5. Sound System (SD-450)
sd/sd-8516_programmer_s_reference_guide.1774869899.txt.gz · Last modified: by appledog

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki