Tuesday, 9 December 2025

An LCD for Freebee

I've got this idea for making a coreboard that plugs in to freebee that contains it's own LCD controller. I can buy (from Core electronics) a lovely little 10" 1280x800 LCD, with a converter board that takes a VGA input. If I do 2 pixels per bee pixel horizontally, and 3 pixels vertically, I get a 640 x 266 display, which is terribly close to the 80x24 bee mode (640 x 264).

I bought one of these (panel is a B101EW05), and this is what it looks like on freebee, via a GBS-8200 CGA-VGA upscaler. It's not too shabby:

the data sheet for the panel says it works with dot-clocks from 64-85 MHz, so at (say) 80 MHz, halving horizontal resolution, I only have to generate pixels at 40 MHz. That's doable with 74AHC...

Here's a little board I knocked up to drive it. I use an ICE40HX1K FPGA, which has 64kbit of dual port RAM, which can be used as a line buffer, plus a PLL for generating a 6x dot clock. I've put an LVDS serialiser in as well, so it'll drive the panel directly. Yeah, not a lot of through hole parts in this one.

And built. This is not like most boards I do lately, featuring TQFP and TSSOP parts, 0603 resistors and caps, and some fiendish SMD inductors that don't have leads at all. Now to get to writing Verilog code for the FPGA.

No comments: