Hybrid SID Player

A place to document your own projects.

Re: Hybrid SID Player

Postby Markus Gritsch » Wed Feb 25, 2015 1:46 am

@Zytryx: If you are still interrested to get this working, I have an idea what might be the problem: My build uses an SSD1308 which needs an external charge pump to provide the OLED driving voltage. The SSD1306 you use can also be driven with an external OLED voltage, but it also has an internal charge pump, which, in case it is the sole provider of the driving voltage, must be enabled with a command (viewtopic.php?f=56&t=2609&p=25069&hilit=+oled#p44009).

I think sending this command to the SSD1308 has no effect, so I will try to add it to my firmware to make it also work with SSD1306 displays. If you can compile the firmware yourself, the change you have to make is adding this command to the oled_config() function in oled.c.
User avatar
Markus Gritsch
Sr. Member
Sr. Member
 
Posts: 297
Joined: Tue Feb 09, 2010 6:54 am

Re: Hybrid SID Player

Postby Markus Gritsch » Sat Feb 28, 2015 3:16 pm

Hi,

I added the commands to activate the built-in charge pump of the SSD1306 display to the firmware. Here you can see it working with a 1.3 inch SSD1306 display I had lying around:

IMG_4420_1200x1600_85.jpg

Please find the archive which contains the updated firmware together with a precompiled binary attached.

Have fun,
Markus
Attachments
firmware_2015-02-28.zip
(467.92 KiB) Downloaded 159 times
Last edited by Markus Gritsch on Tue Mar 08, 2016 2:42 am, edited 1 time in total.
User avatar
Markus Gritsch
Sr. Member
Sr. Member
 
Posts: 297
Joined: Tue Feb 09, 2010 6:54 am

Re: Hybrid SID Player

Postby bl4rk » Fri Mar 04, 2016 3:16 pm

I'm a little confused about getting Acid64 to play to the network. I see that you've written some sort of driver for that -- but there appears to be very little documentation on this (unless I missed something obvious).

I'm building an ESP8266 based player, which is connected to the network wirelessly, I want to implement the server directly on the ESP's micro but I can't figure out how to tell Acid to simply use 192.168.x.x:6581 as an output device. Can you please point me in the correct direction?

Thanks!
bl4rk
Newbie
Newbie
 
Posts: 18
Joined: Wed Aug 22, 2012 10:30 am

Re: Hybrid SID Player

Postby Markus Gritsch » Sat Mar 05, 2016 8:37 am

Hi,

currently ACID 64 does not allow configuring host and port. It just uses localhost:6581, which works for jsiddevice.exe and also the Python script I use to send the network data to the serial port for my hardware player.

Some time ago I suggested to Wilfred Bos that it would probably make sense to make the host and port configurable. Maybe you tell him about your project, and that you would need them being configurable. I found him being very helpful and nice.

Cheers,
Markus

P.S.: And post back about your progress implementing it on an ESP8266 :)
User avatar
Markus Gritsch
Sr. Member
Sr. Member
 
Posts: 297
Joined: Tue Feb 09, 2010 6:54 am

Re: Hybrid SID Player

Postby bl4rk » Sat Mar 05, 2016 12:47 pm

Looks like I missed something in the protocol. So from what I understand if localhost:6502 is open, Acid64 will send out some sort of discovery packet which you reply to and then it knows there is a SID chip there to send the data to?

I'll have to look at your Python app more closely as I've been looking at all kinds of projects to try to figure that part out and I guess I missed it in every one. D'oh!

And yeah, I also emailed Wilfred and he was incredibly helpful with a very long email back to me (but I still didn't get this one part figured out, hehe). I think that having the IP:PORT as a configuration option would be really nice in order to avoid running a local proxy.

I will certainly post again. Right now the plan is ESP8266 + mcp23017 i2c i/o expander (16 gpio) + SID + LM386 preamp. I want to build the firmware work with both Acid64 and also the route that one other project I saw took, which was to use py65 to emulate the 6502 and then send register information over (just for the learning/fun of it)...

I'll start a thread when I get a bit further because I don't want to hijack this one! Thanks for the help.
bl4rk
Newbie
Newbie
 
Posts: 18
Joined: Wed Aug 22, 2012 10:30 am

Previous

Return to Project logs