English Amiga Board


Go Back   English Amiga Board > Support > support.Hardware

 
 
Thread Tools
Old 25 November 2008, 03:06   #1
FrenchShark
FPGAmiga rulez!
 
FrenchShark's Avatar
 
Join Date: Dec 2007
Location: South of France
Age: 50
Posts: 155
Who would be interrested in flash replacement kickstart pcb?

Hello,

I am about to order some small PCBs the size of a DIL-40 that will hold a 29F400 flash. They will be a drop-in replacement for Kickstart ROMs with two wires to connect : _WE and _RESET.
On the 32-bit machines, the flash rom will be 1MB total (2 x 29f400) with two PCBs.

The only problem I see : how do we start the Amiga with a blank flash the first time ?
Either, I provide the PCB pre-flashed or the user has to piggy-back the Kickstart ROM on the PCB and put a switch to select ROM or flash.

What do you think ?

Regards,

Frederic
FrenchShark is offline  
Old 25 November 2008, 10:16   #2
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,461
Drop in on which Amiga? I fear the form factor is different on different Amiga's. You'd have to have two PCB's connected via a ribbon cable to make it universally compatible.
alexh is online now  
Old 25 November 2008, 10:26   #3
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,570
Suggestions:

42 pin DIL + PCB solder pads for 2 "extra" address lines (+pulldown resistors) -> simple kickstart switcher and/or makes 1M/2M ROM experiments easy (I still have some plans, eprom erasing is sooo slow) and also it would be CD32 compatible.

At least 8Mbit flash chip support.

Socket for original ROM + switch is imho the easiest and best choice.
Toni Wilen is online now  
Old 25 November 2008, 11:07   #4
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,655
Yeah, make a kickstart switch of it Should be dead easy for backup and trying various (existing backups of ;P) Kickstarts. Legal department should love it, you've made it for the sole purpose of providing a backup function to preserve legacy firmware!
Photon is offline  
Old 25 November 2008, 11:50   #5
yaqube
Registered User
 
Join Date: Mar 2008
Location: Poland
Posts: 159
I have almost completed flash kickrom board for my A4000D (this project is currently on hold). It uses two 29F400 flash chips and has two sockets for original ROMs (required for initial flashrom programming).

I have found some issues with fitting flash rom into Amiga:
1. _ROMEN (rom chip enable) is generated by GARY for read access only.
For writes you have to:
- generate _CE for flashrom chips which would be active during CPU write cycles.
- generate _DSACK0/1 cycle termination signals with appropriate timing (flashrom access speed), otherwise the cycle will be terminated by bus timeout counter which is very slow.

2. Gary doesn't support 1MB ROMs. _ROMEN is generated for the $F80000-$FFFFFF range only. In A4000T for 1MB ROM support there is additional logic which maps $E00000 space into $F80000 so Gary response with _ROMEN. This address lines logic only affects Gary.

3. I don't know exactly how auto vectoring of interrupts are solved on big Amigas (I guess they use _AVEC signal during interrupt acknowledge cycle) but A500/A600 reads the interrupt vector from ROM (last 7 words). So if you use FC0-2 lines for _ROMEN generation remember about activating it during interrupt acknowledge cycle.

Last edited by yaqube; 25 November 2008 at 21:12. Reason: typo
yaqube is offline  
Old 25 November 2008, 16:32   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,570
Quote:
Originally Posted by yaqube View Post
Gary doesn't support 1MB ROMs. _ROMEN in generated for the $F80000-$FFFFFF range only.
Gary surely does. ROM appears at 0xE0000-0xE7FFFF (at least on my real A500) Of course extra address line is missing but it is easy to add.

Also on my A1200 ROM (Gayle) appears at 0xA80000-0xB7FFFF and 0xE0000-0xE7FFFF (2M supported). Unfortunately this does not work with Blizzard Map ROM.

Quote:
In A4000T for 1MB ROM support there is additional logic which maps $E00000 space into $F80000 so Gary response with _ROMEN. This address lines logic only affects Gary.
A4000 does not have Gary chip
(neither does A600 or A1200)
Toni Wilen is online now  
Old 25 November 2008, 17:01   #7
yaqube
Registered User
 
Join Date: Mar 2008
Location: Poland
Posts: 159
Quote:
Originally Posted by Toni Wilen View Post
Gary surely does. ROM appears at 0xE0000-0xE7FFFF (at least on my real A500) Of course extra address line is missing but it is easy to add.
On my A4000 there is no ROM alias at $E00000. Look for P155 PAL in the A4000T schematics. It modifies A20 and A19 address lines going to the Fat Gary.

Quote:
Also on my A1200 ROM (Gayle) appears at 0xA80000-0xB7FFFF and 0xE0000-0xE7FFFF (2M supported). Unfortunately this does not work with Blizzard Map ROM.
No ROM here in my A4000.

Quote:
A4000 does not have Gary chip
(neither does A600 or A1200)
Sorry, my bad. A4000 (and A4000T) has Fat Gary.
yaqube is offline  
Old 25 November 2008, 17:48   #8
DJBase
Amiga is my Religion
 
DJBase's Avatar
 
Join Date: May 2005
Location: Germany
Posts: 578
Theres already a project in final stage...

http://www.a1k.org/forum/showthread.php?t=13078
DJBase is offline  
Old 25 November 2008, 18:41   #9
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,570
Quote:
Originally Posted by yaqube View Post
On my A4000 there is no ROM alias at $E00000. Look for P155 PAL in the A4000T schematics. It modifies A20 and A19 address lines going to the Fat Gary.
My A4000T schematics have really crappy quality, haven't noticed this before.. Weird hack, I don't see the point. Just remove the chip and reconnect address lines normally

Quote:
Theres already a project in final stage...
Maybe but german-only projects can be considered non-existing, unfortunately
Toni Wilen is online now  
Old 25 November 2008, 18:42   #10
DJBase
Amiga is my Religion
 
DJBase's Avatar
 
Join Date: May 2005
Location: Germany
Posts: 578
Well once its finished I am sure there will be also an english description.
DJBase is offline  
Old 25 November 2008, 18:51   #11
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,570
Quote:
Originally Posted by DJBase View Post
Well once its finished I am sure there will be also an english description.
Perhaps but then it is too late to improve the design with something I'd like to have
Toni Wilen is online now  
Old 25 November 2008, 19:14   #12
DJBase
Amiga is my Religion
 
DJBase's Avatar
 
Join Date: May 2005
Location: Germany
Posts: 578
What would you like to have? Maybe I can bring in your ideas.
DJBase is offline  
Old 25 November 2008, 20:36   #13
Doobrey
Hamster tamer
 
Join Date: Apr 2007
Location: Out in the woods
Posts: 122
Quote:
Originally Posted by Toni Wilen View Post
My A4000T schematics have really crappy quality, haven't noticed this before.. Weird hack, I don't see the point. Just remove the chip and reconnect address lines normally
It simply fools Fat Gary into seeing any reads to 0xE0000-0xE7FFFF as being in the 'normal' 0xF8000-0xFFFFFF range, so it asserts /ROMEN and handles the cycle termination etc.

No idea why C= removed the 0xE0000-0xE7FFFF ROM mapping from Fat Gary, I did some tests last year and the A3000 suffers from it too
Doobrey is offline  
Old 25 November 2008, 20:45   #14
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,570
Quote:
Originally Posted by Doobrey View Post
It simply fools Fat Gary into seeing any reads to 0xE0000-0xE7FFFF as being in the 'normal' 0xF8000-0xFFFFFF range, so it asserts /ROMEN and handles the cycle termination etc.

No idea why C= removed the 0xE0000-0xE7FFFF ROM mapping from Fat Gary, I did some tests last year and the A3000 suffers from it too
Ah. I thought that circuit disabled Fat Gary's 0xe0 mapping but it "fake enables" it..

What do A3000 and A4000 (non-T) return at 0xA80000-0xB7FFFF and 0xE00000-0xE7FFFF? "nothing" and/or "bus noise"? (I really need to find/buy/steal A3000 soon..)

So this means only "standard" Gary Amigas (A500, A500+, A2000, CDTV), Gayle-based Amigas (A600, A1200) and CD32 have 1M+ ROM support. Not sure about A1000 (It does not have Gary but separate logic chips, will test soon, A1000 soonish here..)
Toni Wilen is online now  
Old 25 November 2008, 21:25   #15
Doobrey
Hamster tamer
 
Join Date: Apr 2007
Location: Out in the woods
Posts: 122
Quote:
Originally Posted by Toni Wilen View Post
What do A3000 and A4000 (non-T) return at 0xA80000-0xB7FFFF and 0xE00000-0xE7FFFF? "nothing" and/or "bus noise"?
IIRC, The A4000T has the same problem too, that PAL mentioned above is marked as 'optional' on the schematics I've seen, and I've not seen it fitted on any of the photos on amiga-hardware.com or amiga.resource.cx

From what I remember about the tests I tried last year.. (fuzzy memory!)
68060.library and 68040.library remap the 0xe00000-0xe7ffff, so I loaded a fake 'cdstrap' module which makes them think it's a CD32 and stops the remapping.

After that, any reads to 0xe00000 gave a 8000 0002 "bus error" guru.
(Also tested by booting without startup-sequence, so no '040.lib loaded)

That's changeable by flipping a bit in Ramsey or Fat Gary(damn my memory!), but then the default cycle termination kicks in, which meant I was only getting around 300KB/s reads. But it was 300KB/s of reading bugger all, just returning 0xFFFFFFFF.

There was some code in expansion.library that sets it to 'bus error mode' instead of 'timeout mode'

edit: found it, it was Fat Gary's TOENB register set to 'bus error mode'.. MOVE.B #$80,$DE0000

Last edited by Doobrey; 25 November 2008 at 21:50. Reason: damn tpyos!
Doobrey is offline  
Old 26 November 2008, 07:24   #16
FrenchShark
FPGAmiga rulez!
 
FrenchShark's Avatar
 
Join Date: Dec 2007
Location: South of France
Age: 50
Posts: 155
@ all,

thanks you guys for the replies.
Since the address decoding is not done during write, I think I am gonna drop the project .
Too bad, I have a bunch of 29F400 laying around. I thought turning them into kickstarts was a good choice.
I am going back to my FPGA projects .

Regards,

Frederic
FrenchShark is offline  
Old 26 November 2008, 07:46   #17
coze
hastala vista winny vista
 
coze's Avatar
 
Join Date: Feb 2006
Location: mt fuji
Age: 46
Posts: 1,335
Send a message via ICQ to coze Send a message via Yahoo to coze
Hasn't this been done before ?

KF500
coze is offline  
Old 27 November 2008, 10:38   #18
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,570
Quote:
Originally Posted by Doobrey View Post
After that, any reads to 0xe00000 gave a 8000 0002 "bus error" guru.
Ok, so this area is not mapped at all.

UAE does handles this incorrectly but practically nobody cares and it is probably safer because MMU isn't emulated..

Quote:
edit: found it, it was Fat Gary's TOENB register set to 'bus error mode'.. MOVE.B #$80,$DE0000
This is also "emulated" but does nothing, see above

Quote:
Hasn't this been done before ?
More than once I guess, but so far every one appears to be very basic without any extra features, like jumperless design

Seriously, problem is building one, I am too lazy and most people are not interested in soldering. Ready-made flash chip to 16-bit 40/42pin ROM adapter would be nice.
Toni Wilen is online now  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
HomeMade PCB coze support.Hardware 11 13 March 2011 00:55
Wrinkles in PCB PowerPie5000 support.Hardware 10 11 December 2010 15:21
Looking for PCB wizzard kolla request.Other 5 11 August 2010 12:12
EEP-/Flash-ROMs as Kickstart replacement Borg_Number_One support.Hardware 4 28 February 2005 00:17
New Bounty-Project started for AROS: Kickstart replacement Paul News 0 26 December 2004 12:12

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 08:00.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.19945 seconds with 13 queries