- Joined: 25 Feb 2013
- Posts: 384
- Location: Osaka
|
Hardware emulation of the lightphaser, do you think this is feasible?
Posted: Wed Apr 03, 2013 6:17 pm
|
I am starting a new project, and I would like to ask you all whether you think it is feasible.
The purpose it to use the AimTrak Light Gun with the real hardware, so that I can use lightphaser games with an LCD.
The circuit would be a rasberry pi that takes as input the sync of the master system. In this way, I can compute when a new frame is being drawn and what line is being sent.
The output would be connected to the master system pad port. The TH signal would be generated by bringing down the TH when the mouse position corresponds to the position being drawn.
The AimTrak Light Gun would clearly be used to set the mouse position.
I was therefore studying how the lightphaser works from emulators source code, but I got stuck in viewtopic.php?t=14176
Apart this, do you think this approach is feasible?
|
- Site Admin
- Joined: 19 Oct 1999
- Posts: 14745
- Location: London
|
Posted: Wed Apr 03, 2013 9:09 pm
|
Imagine the way a CRT beam draws a video frame. Now slow it down and imagine you are looking at the screen through a small circular hole. You will see the beam entering the circle at the top, moving left to right; then, it will disappear for a while; then it will reappear at the left, a bit lower down. Repeat a few times until you no longer see it.
That's what the sensor in the light phaser sees. Except it has no concept of left/right/top/bottom of its circle, just whether it sees the beam. When it sees it, it signals on TH. The console does the rest.
To emulate it in hardware, you will need to process the video signal, to determine which part of the screen is currently being drawn. Then you need to map the light gun's position onto that screen, and make a virtual circle within which you signal the TH line, with quite high timing accuracy.
I don't know if the Pi has the timing resolution and speed to do this, particularly if you're doing it in software running on a general purpose operating system.
|