English Amiga Board


Go Back   English Amiga Board > Support > support.Hardware

 
 
Thread Tools
Old 08 May 2023, 23:34   #1
redblade
Zone Friend
 
redblade's Avatar
 
Join Date: Mar 2004
Location: Middle Earth
Age: 40
Posts: 2,130
Maximum amount of RAM for a 32-bit Amiga

I read on https://retrocomputing.stackexchange...a-or-commodore that the maximum amount of memory is 1024MB using 4 Zoro III expansion slots each with 256MB RAM on a big box amiga? Is this the maximum out of 4096MB? I know Kickstart takes 0.5MB RAM, Custom chips take so much...

Is it possible to design a 32bit cpu i.e a 68EC030 to use 3 or 3.5GB RAM?

Do you have to run a
Code:
setpatch
to modify exec.library to modify the RAM memory lists?

I know you must be wondering what you would have in a 3.5GB RAM amiga, maybe in the old days you would store a WAREZ BBS there so if you got busted all the evidence would go. Or maybe you would just use it for look up tables for programming, I don't think the sine/cosine table took up much RAM for the old 3D cubes. (less than 4k??)

Maybe this type of memory would allow faster INT calculations compared to Doubles/floats as you would have more memory to play with
Thanks.
redblade is offline  
Old 09 May 2023, 01:28   #2
a/b
Registered User
 
Join Date: Jun 2016
Location: europe
Posts: 1,068
Going over 2GB means that the "negative" $80000000-$ffffffff range is accessible and that would break a lot of software, including ROM. Next, you have exclude the hardware and special purpose regions under $10000000, that's another 256MB.
So down to 1.75GB (plus chip memory and a little extra you could stuff into Zorro2).
Then you have to consider the number of slots for memory sticks, eventual constraints related to that, etc. to see how much you can actually fit.
a/b is offline  
Old 09 May 2023, 02:07   #3
thebajaguy
Registered User
 
Join Date: Mar 2017
Location: Rhode Island / United States
Posts: 204
The Amiga memory map, as defined in the OS design, does not use the upper 2GB for any address. Think of it as the limit of a signed 32-bit integer, with the Most Significant Bit equaling negative values, and off-limits for programs.

There is the hardware Z3 AutoConfig detection 'slot' up at the top of the memory map, but any card which appears there will be assigned to the Z3 AutoConfig pool in the legal space.

Technically, your only option for 'more' memory to run things is to look into Virtual Memory (which is really RAM swapped to disk). The program(s) get a large memory model that would technically overlap if all were in use. Performance impact would certainly apply, too.
thebajaguy is offline  
Old 09 May 2023, 09:51   #4
Hedeon
Semi-Retired
 
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 2,047
Expansion.library limits stuff from 0x40000000 to 0x80000000 for Z3 autoconfig too, I believe
Hedeon is offline  
Old 09 May 2023, 10:50   #5
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,574
At least 3.1 and earlier didn't have any limit checks and allowed Z3 RAM over $80000000 limit. This config can be created in WinUAE without any unexpected side-effects. Later KS versions (not sure if 3.1.4 or only 3.2) restrict it like OS4 which is annoying
Toni Wilen is offline  
Old 09 May 2023, 10:53   #6
tomcat666
Retro Freak
 
tomcat666's Avatar
 
Join Date: Nov 2001
Location: Slovenia
Age: 51
Posts: 1,665
real A1200 with pistorm32 and rpi4 with 4Gb of ram (amiga limited to 2Gb) :

tomcat666 is offline  
Old 09 May 2023, 11:14   #7
mschulz
Registered User
 
Join Date: Nov 2018
Location: Germany
Posts: 110
Quote:
Originally Posted by Toni Wilen View Post
At least 3.1 and earlier didn't have any limit checks and allowed Z3 RAM over $80000000 limit. This config can be created in WinUAE without any unexpected side-effects. Later KS versions (not sure if 3.1.4 or only 3.2) restrict it like OS4 which is annoying
There is at least **ONE** function in exec.library which will break if there is more than 2GB of RAM available - AllocEntry. The problem with it is, that AllocEntry is using the most significant bit to report a failure. There are probably other places which could misuse the MSB in similar manner. For example, ExecBase->ResModules is using array of pointers to Resident structures instead of regular list. The arrays are chained together in a way where the MSB indicates if the pointer is to Resident (MSB==0) or a pointer to another array of pointers (MSB==1).

This is very unfortune, because otherwise there would be no problem with having more than 2GB of memory classic AmigaOS...

The sad thing is, both cases would be non-existing if AmigaOS creators would have picked the LSB instead of MSB. That would not harm at all because:
a) All memory allocations are aligned to 8-byte boundary (size of MemChunk struct) anyway
b) An array of pointers to Resident has to be aligned on 2-byte boundary since 68000 cannot read LONG from odd-aligned address.
mschulz is offline  
Old 09 May 2023, 11:37   #8
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,574
I know. But that can be worked around easily enough (if you get bit 31 set, use some other way to allocate it) without bothering everyone with "too much" memory.
Toni Wilen is offline  
Old 09 May 2023, 14:52   #9
Lord Aga
MI clan prevails
 
Lord Aga's Avatar
 
Join Date: Jul 2010
Location: Belgrade, Serbia
Posts: 1,443
Quote:
Originally Posted by redblade View Post
Is it possible to design a 32bit cpu i.e a 68EC030 to use 3 or 3.5GB RAM?
I see someone decided to finally make a decent Final Fight port
Lord Aga is offline  
Old 09 May 2023, 15:18   #10
Don_Adan
Registered User
 
Join Date: Jan 2008
Location: Warsaw/Poland
Age: 56
Posts: 2,049
For me exec.library in Amiga OS 3.3 or Amiga OS 3.4 can be extended (new LVO's) to support memory from $80000000-$ffffffff range, even if it will be special memory, used only for data streaming/handling. WinUAE can be used for tests. Same for support files bigger than 2GB. Old LVOs can be updated for checking ID (f.e "48bt" or "64bt") in D1 (word or highword) or new LVO's can be added. And new created programs can handle big files.
Don_Adan is offline  
Old 09 May 2023, 15:50   #11
meynaf
son of 68k
 
meynaf's Avatar
 
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,355
Quote:
Originally Posted by redblade View Post
Is it possible to design a 32bit cpu i.e a 68EC030 to use 3 or 3.5GB RAM?
You don't need to change anything cpu wise. 68030 itself can access 4GB with no problem (actually it would be even more if its FCx pins were used).
The limit is really the OS (and not a big part of it).
meynaf is offline  
Old 09 May 2023, 21:22   #12
redblade
Zone Friend
 
redblade's Avatar
 
Join Date: Mar 2004
Location: Middle Earth
Age: 40
Posts: 2,130
Thanks guys, was just wondering if there were going to be RAM accelerators with 1GB or 2GB RAM sticks
redblade is offline  
Old 10 May 2023, 03:42   #13
qz3fwd
Registered User
 
Join Date: Oct 2022
Location: Shelby Township
Posts: 83
Quote:
Originally Posted by redblade View Post
Thanks guys, was just wondering if there were going to be RAM accelerators with 1GB or 2GB RAM sticks
I read somewhere that the accelerator card bus/slot specifications limit CPU accelerators to 128 MB local RAM?
qz3fwd is offline  
Old 10 May 2023, 16:31   #14
Daedalus
Registered User
 
Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 6,381
The A3000/A4000 memory map allocates a maximum 128MB for the accelerator slot, and no accelerators back in the day exceeded this, even when their A1200 counterparts did (Blizzard A1200 accelerators support 256MB). However, I believe the upcoming TF4060 goes beyond 128MB by allocating extra RAM above 128MB as Zorro-III RAM instead.

Realistically though, so long as it's cheaper or easier to not fit or support multiple GB of RAM, I can't see why any accelerator builders would do so. The time of heavy serious use that would need that much RAM is long past, so other than having a bigger number in the title bar, I can't see how there would be any significant demand for 1GB or 2GB accelerators.

I had 256MB in my A1200 (which was my main computer well into the '00s), but downgraded it to 192MB many years ago and never bumped into that limit.
Daedalus is offline  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
32-bit Chip RAM detection BlankVector support.WinUAE 10 26 May 2019 22:02
32-bit Fast RAM slower than 24-bit Fast on certain A1200 config moshy support.WinUAE 1 24 May 2013 21:55
Question about 32-bit ram sink support.WinUAE 7 12 January 2011 12:02
Maximum amount of supported RAM in OS 3.1? emuola support.Hardware 16 02 October 2009 08:25
Failsafe way to force libs and interrupt vectors to 32-bit ram? Photon support.Hardware 7 24 September 2009 20:26

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 01:09.

Top

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