Here are the photos posted by Gordon:
Color tests:
Some circles:
Defence Force !
Could you detail a bit about how it works ?
Personally I'd like to know if you are outputing some VGA signal, or if the screen is accepting the standard 15khz RGB signal that the Oric outputs
Is there a way to use your system for example to connect the Oric to a normal VGA screen, or to a video projector ?
Oric FlatMos
The display uses the standard ORIC RGB output signals. One of my goals was to make sure that it would not require any modifications to the ORIC.
Here is how it works...
The 4 TTL signals from the RGB port (R,G,B and Sync) are fed into a CPLD (programmable logic chip) and sampled into some internal capture buffers. This is done using a 24MHz clock as the Oric outputs pixels at exactly 6MHz, the sampling occurs at 6MHz but by using 24Mhz clock you can adjust the phase precisely.
Logic inside the CPLD detects edges on the Sync input so that each (384 pixel) line can be accurately sampled. In each 50Hz frame I capture 240 of the 312.5 lines, and 320 of the 384 pixels in each line, this is the native resolution of the LCD. As pixels are captured they are written into a 32k byte SRAM chip. Each frame uses 320 x 240 x 3 / 8 = 28800 bytes. The timing is arranged so that the 240 x 224 active pixels in the Oric output are centred on the display.
More logic in the CPLD writes the buffered frames into the LCD with a 75Hz frame rate. This process is sychronised with the Oric VSYNC, so that each frame is displayed 1.5 times, therefore elimating flicker.
The whole design was wriiten in VHDL and simulated using Xilinx's free Webpack ISE tools.
In answer to your question about a VGA output. Yes this is entirely possible. As my Flatmos system is quite expensive I thought it would be a good idea too!
The idea would be to capture the pixels in the same way but then generate a VGA output suitable for use with a PC flat panel. As most people would use a 15" 1024 x 768 panel. I figure that it would be best to triple each pixel time so that the Oric display occupied (240 x 3 = 720) by (224 x 3 = 672) pixels on screen. Again this could use a 75Hz frame rate synchronised to the Oric, all current panels will sync at this rate.
There is a Xilinx Spartan 3 FPGA board available with all the right components on it (SRAM, VGA connector etc.) available for around 160 euros. If there is enough interest in such a design then I will make time to do it.
Here is how it works...
The 4 TTL signals from the RGB port (R,G,B and Sync) are fed into a CPLD (programmable logic chip) and sampled into some internal capture buffers. This is done using a 24MHz clock as the Oric outputs pixels at exactly 6MHz, the sampling occurs at 6MHz but by using 24Mhz clock you can adjust the phase precisely.
Logic inside the CPLD detects edges on the Sync input so that each (384 pixel) line can be accurately sampled. In each 50Hz frame I capture 240 of the 312.5 lines, and 320 of the 384 pixels in each line, this is the native resolution of the LCD. As pixels are captured they are written into a 32k byte SRAM chip. Each frame uses 320 x 240 x 3 / 8 = 28800 bytes. The timing is arranged so that the 240 x 224 active pixels in the Oric output are centred on the display.
More logic in the CPLD writes the buffered frames into the LCD with a 75Hz frame rate. This process is sychronised with the Oric VSYNC, so that each frame is displayed 1.5 times, therefore elimating flicker.
The whole design was wriiten in VHDL and simulated using Xilinx's free Webpack ISE tools.
In answer to your question about a VGA output. Yes this is entirely possible. As my Flatmos system is quite expensive I thought it would be a good idea too!
The idea would be to capture the pixels in the same way but then generate a VGA output suitable for use with a PC flat panel. As most people would use a 15" 1024 x 768 panel. I figure that it would be best to triple each pixel time so that the Oric display occupied (240 x 3 = 720) by (224 x 3 = 672) pixels on screen. Again this could use a 75Hz frame rate synchronised to the Oric, all current panels will sync at this rate.
There is a Xilinx Spartan 3 FPGA board available with all the right components on it (SRAM, VGA connector etc.) available for around 160 euros. If there is enough interest in such a design then I will make time to do it.
-
- Officer Cadet
- Posts: 37
- Joined: Sun Feb 05, 2006 11:06 pm
- Location: Toulouse, France
- Contact:
I'm interested in such a design, as I think I own the board you're talking about
Strange... the Spartan-3 Starter Board is $149 on Xilinx's website, whereas it's at $99 on Diligent's one. See
http://www.digilentinc.com/Products/Cat ... le%20Logic
Which CPLD are you using ? How much room does your design take ? If it's small enough to fit into a small CPLD, it would be interesting to build a simple board for this purpose, and I think many people would be interested (not only Oric people).
BTW, which LCD are you using ?
Strange... the Spartan-3 Starter Board is $149 on Xilinx's website, whereas it's at $99 on Diligent's one. See
http://www.digilentinc.com/Products/Cat ... le%20Logic
Which CPLD are you using ? How much room does your design take ? If it's small enough to fit into a small CPLD, it would be interesting to build a simple board for this purpose, and I think many people would be interested (not only Oric people).
BTW, which LCD are you using ?
Hi Torlus
Wow, those boards are cheap direct from Digilent, thanks for the tip!
I'm using the XC2C256, and it is 75% full, so there's no chance of fitting it into a 'small' CPLD. I take your point about producing a board, but the expense of low volume PCB manufacture, plus the cost of fitting of the surface mount parts is too high, which is a shame.
FYI the LCD I use is the Hitachi SX14Q001 which, along with the backlight inverter, costs a whopping 315 euros from Farnell! I managed to get mine much cheaper as a 'sample' from a large distributor
I might buy myself a Spartan 3 board from Digilent soon, in which case I'll get the VGA converter design done. However, I have just started a design for a client, so could be busy with that for a while...
Cheers
Gordon
Wow, those boards are cheap direct from Digilent, thanks for the tip!
I'm using the XC2C256, and it is 75% full, so there's no chance of fitting it into a 'small' CPLD. I take your point about producing a board, but the expense of low volume PCB manufacture, plus the cost of fitting of the surface mount parts is too high, which is a shame.
FYI the LCD I use is the Hitachi SX14Q001 which, along with the backlight inverter, costs a whopping 315 euros from Farnell! I managed to get mine much cheaper as a 'sample' from a large distributor
I might buy myself a Spartan 3 board from Digilent soon, in which case I'll get the VGA converter design done. However, I have just started a design for a client, so could be busy with that for a while...
Cheers
Gordon
Yup, it really sucks that getting these parts in low volumes is SO expensive. Using a photo frame could work with composite video, the trouble is you end up with size interpolation or decimation, meaning that each ORIC pixel won't 'land' on an exact LCD pixel location. The same problem applies when using comp video on an LCD TV.
Might be better to buy a photo frame and take the thing apart for the bits!
A friend of mine works on satellite imaging systems. Guess where they get their CCDs from. Yup, out of consumer digital cameras!!
Might be better to buy a photo frame and take the thing apart for the bits!
A friend of mine works on satellite imaging systems. Guess where they get their CCDs from. Yup, out of consumer digital cameras!!