Al 04/01/13 18:02, En/na Mark Benson ha escrit:
On 4 Jan 2013, at 00:10, Jordi Guillaumes i Pons wrote:
Rasp-pi + simh + RSX + a little bit of electronics = nice light show ;)
http://ancientbits.blogspot.com.es/2013/01/let-there-be-blinkenlight.html
I need the details of this, I have wanted to do this for an age!
I have been searching the net for almost a year looking for nice looking switches and
panel mount lights to build a proper front panel.
I
If you can publish the info it'd be great :D
Well, I'm not so ambitious :) I just want some blinking lights. Right now I have
basically the "data" lights functionality. The "address" and the knobs
are simh registers. I'm still working on it so I can peek at any register or address;
I made that video with a very basic functionality (the LEDS are fixed on R0, since I know
R0 is used for the idle loop light chasers...).
The electronics part is quite easy. The base is this arduino tutorial:
http://arduino.cc/en/Tutorial/ShiftOut
Replacing the arduino for a Rasp-pi is not hard to do. You need the wiringPi library:
https://projects.drogon.net/raspberry-pi/wiringpi/
Or you can use an Arduino instead of the Raspberry to control the LEDs (I'm working on
that now).
As for the software, there are two things to do: first, to control the LEDs. That is easy.
Then you have to interface it into simh, and that is a little bit more difficult, even
more if you haven't touched the simh code before (that is my case). I wanted to do it
so it would be easy to merge with the simh head, so I have not touched the pdp11_cpu.c
code. I have created a "device" and I simulate a timeout on it, so I can update
the lights. Adjusting the timeout period I can regulate the sampling rate. Perhaps there
is a better way to do it, but at this moment I still don't know about it.
This is getting quite off-topic, so perhaps we should continue this conversation off-list.
Anyway, I plan to upload the code to github as soon as it has the minimum presence so I
don't get ashamed by it :-P
Regarding the switches and knobs (the "input" part of the console), sincerely I
have no idea about how to do it :)