Playing SID Files with py65 Hardware Simulation via @dangerousproto
When I saw the https://github.com/atbrask/RealSIDShield project I thought that the whole idea of using py65 to emulate the 6502 was pretty neat, and very accessible for me since I’m a Python guy. Then I stumbled across Acid64, which also emulates the 6502 in software and has a couple of other neat features. So, the plan is to support both. I’m not sure which one I’ll implement first, but it should be relatively easy to get both working… and since Acid64 is Windows only, when I’m on Mac or Linux I can use a python script to stream music.
I use py65, an implementation of the 6502 MPU in Python, in order to “play” the SID file. Since a SID file is basically a 6502 program, we can feed the binary data to the MPU and then let it run until each frame has been written to memory. Then in Python we read the 6502’s memory in order to see what the register values that should be written to the SID are. The SID chip is mapped from $D400-D41C of the C64’s memory, so we can read the register values that we need from there.
Adafruit HUZZAH ESP8266 Breakout: Add Internet to your next project with an adorable, bite-sized WiFi microcontroller, at a price you like! The ESP8266 processor from Espressif is an 80 MHz microcontroller with a full WiFi front-end (both as client and access point) and TCP/IP stack with DNS support as well. Read more.
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.