Oric FlatMos

This is the right place to discuss on how to implement hardware vsync, adding a VIA or AY chipset, puting multiple roms, or how to design a new flash expansion card.
User avatar
Dbug
Site Admin
Posts: 4444
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Oric FlatMos

Post by Dbug »

Here are the photos posted by Gordon:

Color tests:
Image

Some circles:
Image

Defence Force !
Image

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 ?
mmu_man
Flight Lieutenant
Posts: 322
Joined: Thu Sep 21, 2006 7:45 pm
Location: 26000 Valence, FRANCE
Contact:

Post by mmu_man »

Wow!
Soon a laptoric ? ;)
That and a battery pack and you're done.
User avatar
G Squad
Private
Posts: 7
Joined: Fri Oct 26, 2007 12:55 pm
Location: United Kingdom

Post by G Squad »

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.
Torlus
Officer Cadet
Posts: 37
Joined: Sun Feb 05, 2006 11:06 pm
Location: Toulouse, France
Contact:

Post by Torlus »

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 ?
User avatar
G Squad
Private
Posts: 7
Joined: Fri Oct 26, 2007 12:55 pm
Location: United Kingdom

Post by G Squad »

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 :wink:

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
mmu_man
Flight Lieutenant
Posts: 322
Joined: Thu Sep 21, 2006 7:45 pm
Location: 26000 Valence, FRANCE
Contact:

Post by mmu_man »

What is really a shame now is those useless mass produced devices like LCD photo frames are cheaper than the parts they contain...
You might be better trying to use one of those with an external video in than making one... (they are about 100Euros usually).
JamesD
Flight Lieutenant
Posts: 358
Joined: Tue Nov 07, 2006 7:38 am

Post by JamesD »

The boards are the same price on both websites. You are looking at different boards.
User avatar
G Squad
Private
Posts: 7
Joined: Fri Oct 26, 2007 12:55 pm
Location: United Kingdom

Post by G Squad »

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!! :shock:
mmu_man
Flight Lieutenant
Posts: 322
Joined: Thu Sep 21, 2006 7:45 pm
Location: 26000 Valence, FRANCE
Contact:

Post by mmu_man »

consumer-throw-away society here I am...
Post Reply