SID Player

From ScienceZero
Jump to: navigation, search

C64

6510 control port

@ $0000 - Data direction register
@ $0001 - Data register
Bit 0 - LORAM - RAM / ROM @ $A000 - $BFFF (BASIC)
Bit 1 - HIRAM - RAM / ROM @ $E000 - $FFFF (KERNAL)
Bit 2 - CHAREN - I/O / ROM @ $D000 - $DFFF

Expansion port

  1. GND - System ground
  2. +5V DC (Maximum 450 mA)
  3. +5V DC
  4. IRQ
  5. R/W
  6. Dot clock - 8.18 MHz system clock
  7. I/O1 - I/O block 1 @ $DE00-$DEFF
  8. GAME
  9. EPROM
  10. I/O2 - I/O block 1 @ $DF00-$DFFF
  11. ROML - 8 KB decoded RAM/ROM block at @ $8000
  12. BA - Bus available (Goes low 3 cycles before VIC-II takes control over the bus)
  13. DMA - Should only be pulled low when Ø2 is low
  14. D7
  15. D6
  16. D5
  17. D4
  18. D3
  19. D2
  20. D1
  21. D0
  22. GND
  23. GND
  24. ROMH - 8 KB decoded RAM/ROM block at @ $E000
  25. RESET
  26. NMI
  27. Ø2 Phase 2 system clock
  28. A15
  29. A14
  30. A13
  31. A12
  32. A11
  33. A10
  34. A9
  35. A8
  36. A7
  37. A6
  38. A5
  39. A4
  40. A3
  41. A2
  42. A1
  43. A0
  44. GND

MOS6581 / MOS8580 - SID

Pin-out
Block diagram

Register map

@ $D400

  1. FREQ LO - Write only (Voice 1)
  2. FREQ HI
  3. PW LO
  4. PW HI
  5. CONTROL REG
  6. ATTACK/DECAY
  7. SUSTAIN/RELEASE
  8. FREQ LO - Write only (Voice 2)
  9. FREQ HI
  10. PW LO
  11. PW HI
  12. CONTROL REG
  13. ATTACK/DECAY
  14. SUSTAIN/RELEASE
  15. FREQ LO - Write only (Voice 3)
  16. FREQ HI
  17. PW LO
  18. PW HI
  19. CONTROL REG
  20. ATTACK/DECAY
  21. SUSTAIN/RELEASE
  22. FC LO - Write only (Filter)
  23. FC HI
  24. RES/FILT
  25. MODE/VOL
  26. POT X - Read only (Misc)
  27. POT Y
  28. OSC3/RANDOM
  29. ENV3

MOS6567 / MOS6569 - VIC-II video controller

MOS6510 - CPU

MOS6526 - CIA Timer