Writing ROMs for the Falcon

Various other hardware solutions.
User avatar
Badwolf
Posts: 2228
Joined: Tue Nov 19, 2019 12:09 pm

Writing ROMs for the Falcon

Post by Badwolf »

I've been asked a couple of times about writing replacement ROMs for the Falcon, so I'm going to record what I've replied in the past here in the hope it helps others.

~~~

The Falcon takes a single half-megabyte 27C4096 chip in a PLCC44 format. This is located in a socket under the RAM board.

Unfortunately all the modern chips in this format are one-time-programmable, for example the Microchip (AT) version: https://uk.rs-online.com/web/p/eprom/1276560/

s-l500x.jpg
s-l500x.jpg (17.16 KiB) Viewed 5538 times


There are, at the time of writing, vintage and almost certainly second hand, despite adverts to the contrary, UV-erasable Hitachi (HN) versions available on eBay. Search for HN27C4096. You'll probably want to pick up a cheap UV eraser too. These use LEDs and so are pretty inefficient at their job, but a good 45 minutes or so with your chip under the light should erase it fully, more often than not.

IMG_3939.jpeg
IMG_3939.jpeg (47.03 KiB) Viewed 5538 times

Both of these types can be programmed with the now virtually ubiquitous TL866ii Plus programmer (1), with a suitable adapter (5).

v6-6-100-original-new-minipro-tl866cs-programmer.jpg
v6-6-100-original-new-minipro-tl866cs-programmer.jpg (46.54 KiB) Viewed 5538 times

In my opinion, if you're buying one of these TL866ii Plus programmers, it's worth getting a pack with as many adapters as you can as the adapters themselves can be quite pricey and if there's any chance you may want to program something else in the future, it'll probably work out cheaper to wrap them all up into the package in one go. The PLCC extractor tool is a must have as well, if you don't want to run the risk of breaking your ROM socket and having a whole world of pain trying to replace it.

Have a search on Ali Express.

Screenshot 2021-05-04 at 12.32.40.png
Screenshot 2021-05-04 at 12.32.40.png (318.5 KiB) Viewed 5538 times

Some of the more recent adapter boards come with a jumper that lets you choose between compatibility for our EPROMs or for flashing PLCC44 microcontrollers.

The older boards may not have this jumper and are wired to support flashing of the microcontrollers only. For these older boards, you'll need to solder a pair of jumper wires between or around the pin header. Converting two NC pins to ground. These links are between pins 12 and 13 and pins 33 and 34 on the PLCC socket. A little bit of kynar wire will do the job.

IMG_3942.jpeg
IMG_3942.jpeg (35.27 KiB) Viewed 5538 times

Once this is in place you should be able to successfully read the chip ID of your 27C4096 and dump its contents. You can use the (Windows only) software supplied with the TL866ii Plus (I'll not go into this here, as I don't use this, but examples abound on the internet -- it's actually quite powerful and will let you do many things such as dumping GALs and verifying logic chips) or you can use the open-source command line minipro tool.

Now, the Falcon is a big-endian machine and the machine you're going to flash with is almost certainly not, so a bit of byte-swapping is needed.

Let's say I have a 512k EmuTOS image downloaded from https://sourceforge.net/projects/emutos/files/snapshots. It'll be in the correct byte order for running Hatari or indeed running it on the Falcon, but as we come to write a word at a time to on the TL866ii Plus, the order will be reverse.

We can use the command-line tool 'dd' available on most Posix systems to flip the bytes:

Code: Select all

dd conv=swab if=etos512uk.img of=myimage.img
Then we can write it to our (hopefully freshly erased) HN27C4096, or if we're feeling brave, our one-time-writable AT27C4096 (change the chip name as appropriate):

Code: Select all

minipro -p HN27C4096@DIP40 -w myimage.img
~~~

Now, this is a hardware forum, so I should point out there are also alternatives. Either involving a bit of sneaky patch wiring, or by using cut-down 'loader' OSs in the cartridge port. The TL866ii can also write to Flash chips...

IMG_3944.jpeg
IMG_3944.jpeg (30.54 KiB) Viewed 5538 times
But these would be stories for another day!

BW.
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
DSTB1 Open source 16Mhz 68k and AltRAM accelerator for the ST
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
czietz
Posts: 547
Joined: Sun Jan 14, 2018 1:02 pm

Re: Writing ROMs for the Falcon

Post by czietz »

Badwolf wrote: Tue May 04, 2021 1:08 pm UV-erasable Hitachi (HN) versions available on eBay. Search for HN27C4096.
Sidenote: On my eBay order of HN27C4096, one of five EPROMs I bought was a (proven!) fake. I'm not exactly surprised about that, just saying that you perhaps should order more than one, just in case.
User avatar
Badwolf
Posts: 2228
Joined: Tue Nov 19, 2019 12:09 pm

Re: Writing ROMs for the Falcon

Post by Badwolf »

czietz wrote: Tue May 04, 2021 1:17 pm
Badwolf wrote: Tue May 04, 2021 1:08 pm UV-erasable Hitachi (HN) versions available on eBay. Search for HN27C4096.
Sidenote: On my eBay order of HN27C4096, one of five EPROMs I bought was a (proven!) fake. I'm not exactly surprised about that, just saying that you perhaps should order more than one, just in case.
Good advice. One of mine had 43 pins... :?

BW
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
DSTB1 Open source 16Mhz 68k and AltRAM accelerator for the ST
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
BlankVector
Posts: 83
Joined: Fri Sep 15, 2017 10:51 pm

Re: Writing ROMs for the Falcon

Post by BlankVector »

Very good information about the Falcon ROM. I had absolutely no idea about its physical format.

BTW, here is a shameless advert for my review of the TL866II Plus programmer. French speech, but English subtitles are available.
Note: I plan to make a second video, more specific to the STe ROMs.

Subscribe to my Vretrocomputing channel on YouTube and Facebook. Latest video: Disable the key click in assembly language on Atari ST.
BlankVector
Posts: 83
Joined: Fri Sep 15, 2017 10:51 pm

Re: Writing ROMs for the Falcon

Post by BlankVector »

Note that the Xgpro software for TL866II Plus has some options in the Load dialog. This is very convenient to split a 256k STE ROM into two 128k ROMs. Just open the 256k file, and select "Load a low byte of a WORD(2 bytes)" to load the HI half, and "Load a high byte of a WORD(2 bytes)" to load the LO half. Note that, as usual, hi/lo halves are inverted, as the software uses little-endian names.

Unfortunately, it has no byteswap option, so this can't be used to easily flash a Falcon ROM.

load.png
load.png (8.29 KiB) Viewed 5429 times
Subscribe to my Vretrocomputing channel on YouTube and Facebook. Latest video: Disable the key click in assembly language on Atari ST.
User avatar
Badwolf
Posts: 2228
Joined: Tue Nov 19, 2019 12:09 pm

Re: Writing ROMs for the Falcon

Post by Badwolf »

BlankVector wrote: Tue May 04, 2021 2:42 pm Note that the Xgpro software for TL866II Plus has some options in the Load dialog. This is very convenient to split a 256k STE ROM into two 128k ROMs. Just open the 256k file, and select "Load a low byte of a WORD(2 bytes)" to load the HI half, and "Load a high byte of a WORD(2 bytes)" to load the LO half. Note that, as usual, hi/lo halves are inverted, as the software uses little-endian names.
Vraiment très bon, Vincent. :-)

Can you confirm if the software works on modern Windows, by the way?

Merci,

BW
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
DSTB1 Open source 16Mhz 68k and AltRAM accelerator for the ST
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
User avatar
DoG
Posts: 1125
Joined: Sat Apr 07, 2018 12:26 pm

Re: Writing ROMs for the Falcon

Post by DoG »

Badwolf wrote: Tue May 04, 2021 3:38 pm Can you confirm if the software works on modern Windows, by the way?
Works fine in Win10 Pro x64.
BlankVector
Posts: 83
Joined: Fri Sep 15, 2017 10:51 pm

Re: Writing ROMs for the Falcon

Post by BlankVector »

Badwolf wrote: Tue May 04, 2021 3:38 pm Vraiment très bon, Vincent.
Merci :D
DoG wrote: Tue May 04, 2021 3:48 pm
Badwolf wrote: Tue May 04, 2021 3:38 pm Can you confirm if the software works on modern Windows, by the way?
Works fine in Win10 Pro x64.
I also confirm, with same OS. I forgot to say it in the video.
Subscribe to my Vretrocomputing channel on YouTube and Facebook. Latest video: Disable the key click in assembly language on Atari ST.
User avatar
stephen_usher
Posts: 5578
Joined: Mon Nov 13, 2017 7:19 pm
Location: Oxford, UK.
Contact:

Re: Writing ROMs for the Falcon

Post by stephen_usher »

If anyone wants a PLCC-44 EPROM to DIP converter PCB (merely socket and pins needed) I've a few I can send to people once I get back home next weekend.

I can alternatively post KiCAD files and Gerbers if anyone is interested then as well.
Intro retro computers since before they were retro...
ZX81->Spectrum->Memotech MTX->Sinclair QL->520STM->BBC Micro->TT030->PCs & Sun Workstations.
Added code to the MiNT kernel (still there the last time I checked) + put together MiNTOS.
Collection now with added Macs, Amigas, Suns and Acorns.
Rustynutt
Posts: 224
Joined: Fri Sep 29, 2017 8:24 am
Location: USA

Re: Writing ROMs for the Falcon

Post by Rustynutt »

Ok, I'm shopping :)

Some questions, or ignorance :)

Notice you have the 44 pin plcc mounted to a cartridge port card.
I was under the impression the cartridge port could only access 256k.

Are you actually using an 4mb EmuTOS image/can be read by the cartridge port?

Next, can a HN27C1024HCC-85 PLCC-44,x16 EPROM be used in place of a HN27C4096HCC-85 PLCC-44?

I'm not familiar with all the adapters pictured (on eBay) that come with the XGecu TL866II Plus. Do any of those allow to be fitted over plcc's mounted to a board (clip over) so they can be read?

If not, any suggestions?

Thanks all :)
Post Reply

Return to “HARDWARE ESSENTIALS”