English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 06 August 2017, 20:39   #481
honx
Registered User
 
honx's Avatar
 
Join Date: Oct 2014
Location: Klagenfurt / Austria
Posts: 1,571
a question: on amiga 500 plus with aca500plus sysinfo shows 6.7mb fast ram, 2.0mb chip ram and 512kb slow ram.
where does slow ram come from? in trapdoor there is additional 1.0mb chip ram which makes 2.0mb chip ram complete.
aca500plus itself adds fast ram, there should not be any slow ram i assume. so where does this slow ram come from?
and what happened to 1.3mb missing fast ram (that's the difference between 8mb and 6.7mb shown in sysinfo)?
i know, mapped rom needs a part of ram to be loaded. but original amiga roms should take max. 512kb as far i know.
so what else does need 0.8mb ram which remains missing after i consider mapped rom? i have no clue...

Last edited by honx; 06 August 2017 at 20:44.
honx is offline  
Old 06 August 2017, 20:47   #482
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,652
Quote:
Originally Posted by honx View Post
a question: on amiga 500 plus with aca500plus sysinfo shows 6.7mb fast ram, 2.0mb chip ram and 512kb slow ram.
where does slow ram come from? in trapdoor there is additional 1.0mb chip ram which makes 2.0mb chip ram complete.
aca500plus itself adds fast ram, there should not be any slow ram i assume. so where does this slow ram come from?
and what happened to 1.3mb missing fast ram (that's the difference between 8mb and 6.7mb shown in sysinfo)?
i know, mapped rom needs a part of ram to be loaded. but original amiga roms should take max. 512kb as far i know.
so what else does need 0.8mb ram which remains missing after i consider mapped rom? i have no clue...
Probably 300K for updated IDE driver and 0.5MB for slowmem (you should be able to disable slowmem if you don't want it?) but also the OS, programs and buffers take some memory.
Photon is offline  
Old 06 August 2017, 21:03   #483
demolition
Unregistered User
 
demolition's Avatar
 
Join Date: Sep 2012
Location: Copenhagen / DK
Age: 44
Posts: 4,190
Yes, the slow ram comes from the ACA. It can be disabled in the ACA menu but it can be nice to have for compatibility purposes. Since it has lower priority than the regular fast mem, the system will not use this until it runs out of fast mem so there is not really any negative effect to keeping it on I would say.
demolition is offline  
Old 06 August 2017, 21:21   #484
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,567
Again, ACA500plus "slow" RAM is not slow, it is real fast ram. Only exception is 7MHz mode where it becomes true slow ram for compatibility purposes.

6.7M is actual total amount of usable fast RAM. 512k goes to "slow" ram, 512k goes to maprom (even if maprom is off), about 128k goes for firmware internal use. 6.7M+512k+512k+128k=~8M.
Toni Wilen is offline  
Old 06 August 2017, 23:24   #485
E-Penguin
Banana
 
E-Penguin's Avatar
 
Join Date: Jul 2016
Location: Darmstadt
Posts: 1,217
That confused me as well at first!

honx the A500 trapdoor RAM was put at 0xC0 000
and many games expected to find memory there. It was "slow" in that wasn't "fast" mem as used on CPU boards and the like. The ACA500plus "slow RAM" option puts some memory in this space so that games & demos that expect it there can run OK.

In other words, it's a good thing, leave it on.

Amiga memory map:
http://amigadev.elowar.com/read/ADCD_2.1
E-Penguin is offline  
Old 07 August 2017, 19:07   #486
NorthWay
Registered User
 
Join Date: May 2013
Location: Grimstad / Norway
Posts: 852
OT: Wasn't the very first Ranger mem actually fast fastmem.
NorthWay is online now  
Old 07 August 2017, 20:16   #487
honx
Registered User
 
honx's Avatar
 
Join Date: Oct 2014
Location: Klagenfurt / Austria
Posts: 1,571
ranger ram is slow ram as far i know.
honx is offline  
Old 07 August 2017, 20:28   #488
E-Penguin
Banana
 
E-Penguin's Avatar
 
Join Date: Jul 2016
Location: Darmstadt
Posts: 1,217
It had the same bottlenecks as chip ram, so was slow.* The aca500plus puts a block of fast ram at the memory address of the trapdoor ram.

*bit foggy on the details
E-Penguin is offline  
Old 07 August 2017, 20:33   #489
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,567
"Original" A2000 (the one with A1000 chipset) had real fast memory at $c00000. Also some A1000 expansions added real fast "slow" memory.
Toni Wilen is offline  
Old 12 August 2017, 10:07   #490
alpine9000
Registered User
 
Join Date: Mar 2016
Location: Australia
Posts: 881
I am writing a non OS friendly game that uses pretty standard OS startup/shutdown routines. With the APA500plus it does not work correctly with the ACA500 plus VBR move option enabled.

Obviously without an 010+ my code doesn't detect the moved VBR, is there a way I can make it work ?
alpine9000 is offline  
Old 12 August 2017, 18:27   #491
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,567
Quote:
Originally Posted by alpine9000 View Post
I am writing a non OS friendly game that uses pretty standard OS startup/shutdown routines. With the APA500plus it does not work correctly with the ACA500 plus VBR move option enabled.

Obviously without an 010+ my code doesn't detect the moved VBR, is there a way I can make it work ?
Don't enable VBRMove in normal use? Nothing that takes over interrupt vectors will work with it. (Note that vbrmove is not needed for freezer/hrtmon support, NMI vector is always "moved" in 68000 mode)

Also it is only enabled in cloaking mode (because there is no way to software switch it on after cloaking mode is enabled), in normal mode vbrmove option only means "vbrmove is available and can be changed via aca.resource API" (whdload uses this for 68000 quit key support).
Toni Wilen is offline  
Old 13 August 2017, 17:28   #492
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,652
Quote:
Originally Posted by Toni Wilen View Post
Don't enable VBRMove in normal use? Nothing that takes over interrupt vectors will work with it. (Note that vbrmove is not needed for freezer/hrtmon support, NMI vector is always "moved" in 68000 mode)

Also it is only enabled in cloaking mode (because there is no way to software switch it on after cloaking mode is enabled), in normal mode vbrmove option only means "vbrmove is available and can be changed via aca.resource API" (whdload uses this for 68000 quit key support).
Interesting information...

Outside WHDLoad, is normal CF card operation with VBR Move supported?

Because this config gives repeated LED-blinks and resets forever and changing to KS1.3 gives this garbled disk hand graphic and no boot to CF.
Photon is offline  
Old 13 August 2017, 18:16   #493
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,567
Quote:
Originally Posted by Photon View Post
Interesting information...

Outside WHDLoad, is normal CF card operation with VBR Move supported?

Because this config gives repeated LED-blinks and resets forever and changing to KS1.3 gives this garbled disk hand graphic and no boot to CF.
This is a bug but nothing to do with VBR Move: PAL/NTSC force option puts the patch code in reserved memory location that goes away in cloaking mode.. Will be fixed in next update.

KS 1.x corruption is a bug in KS code (missing blitter wait most likely), it happens when CPU is too fast. (Same can be seen in emulation)

Your config is cloaking device mode: IDE hardware disappears.
Toni Wilen is offline  
Old 13 August 2017, 21:03   #494
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,652
So it's for special handling of the NMI vector I guess, and not actual VBR Move. CPU detected as 68000 + vectors not at 0 = disaster for compatible AND incompatible software
Photon is offline  
Old 14 August 2017, 01:12   #495
alpine9000
Registered User
 
Join Date: Mar 2016
Location: Australia
Posts: 881
Quote:
Originally Posted by Toni Wilen View Post
Don't enable VBRMove in normal use? Nothing that takes over interrupt vectors will work with it. (Note that vbrmove is not needed for freezer/hrtmon support, NMI vector is always "moved" in 68000 mode)

Also it is only enabled in cloaking mode (because there is no way to software switch it on after cloaking mode is enabled), in normal mode vbrmove option only means "vbrmove is available and can be changed via aca.resource API" (whdload uses this for 68000 quit key support).
I guess I was assuming most people would run with VBR move enabled by default as the ACA500plus is so well suited to WHDload and people would want quit key support ?

Can I detect an ACA500plus and then take over the vectors ?
alpine9000 is offline  
Old 14 August 2017, 01:53   #496
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 4,348
Wait, does this mean that VBR may be moved even if the CPU is a 68000?
idrougge is offline  
Old 14 August 2017, 15:29   #497
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,652
No. It would be a nice feature - if the CPU supported it (and wouldn't cause all software to crash because they don't know about the new check to make). Now, these are not 1979 68000 chips, so possibly something could have been done inside - but it seems I guessed correctly that it's only the NMI and only for WHDLoad and only supported via the aca.resource and only if there's a WHDLoad version with the call to support it.
Photon is offline  
Old 14 August 2017, 16:36   #498
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,567
It is not full VBR move, only interrupt vectors (and NMI) can be moved. It is possible in hardware level (with 68000) because interrupt vector fetches use special cycle sequence that hardware can detect and return vector pointer data from other memory location.

ACA500plus always moves NMI (used for button options) in all 68000 modes, other interrupt vector move is optional.

Non-cloaking mode VBR Move means: VBR move is available and can be enabled via aca.resource (if also enabled). It has simple API. (I can explain how it works if needed, this is what whdload uses to enable/disable it on the fly)

Cloaking mode enabled VBR Move means: enable it, redirected vectors (0x400000+vector offset) by default redirect execution back to original vector pointers. In other words it is quite useless. (This may do something more in the future)
Toni Wilen is offline  
Old 15 August 2017, 09:56   #499
alpine9000
Registered User
 
Join Date: Mar 2016
Location: Australia
Posts: 881
Quote:
Originally Posted by Toni Wilen View Post
It is not full VBR move, only interrupt vectors (and NMI) can be moved. It is possible in hardware level (with 68000) because interrupt vector fetches use special cycle sequence that hardware can detect and return vector pointer data from other memory location.

ACA500plus always moves NMI (used for button options) in all 68000 modes, other interrupt vector move is optional.

Non-cloaking mode VBR Move means: VBR move is available and can be enabled via aca.resource (if also enabled). It has simple API. (I can explain how it works if needed, this is what whdload uses to enable/disable it on the fly)

Cloaking mode enabled VBR Move means: enable it, redirected vectors (0x400000+vector offset) by default redirect execution back to original vector pointers. In other words it is quite useless. (This may do something more in the future)
OK, so after reading this I figured my game should work with "VBR Move" enabled as it shouldn't do anything, and it did indeed work.

It seems the scenario which causes it to hang is having both "VBR Move" enabled and having the Freezer set to "Action Replay MK III".

If I disable either of those, my game works.
alpine9000 is offline  
Old 17 August 2017, 00:21   #500
Photon
Moderator
 
Photon's Avatar
 
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,652
Quote:
Originally Posted by Toni Wilen View Post
It is not full VBR move, only interrupt vectors (and NMI) can be moved. It is possible in hardware level (with 68000) because interrupt vector fetches use special cycle sequence that hardware can detect and return vector pointer data from other memory location.

ACA500plus always moves NMI (used for button options) in all 68000 modes, other interrupt vector move is optional.

Non-cloaking mode VBR Move means: VBR move is available and can be enabled via aca.resource (if also enabled). It has simple API. (I can explain how it works if needed, this is what whdload uses to enable/disable it on the fly)

Cloaking mode enabled VBR Move means: enable it, redirected vectors (0x400000+vector offset) by default redirect execution back to original vector pointers. In other words it is quite useless. (This may do something more in the future)
Hehe, all clear Thx for the explanation. As dev, *brr* I wouldn't want to 'detect ACA500Plus just to move VBR to fast - for 68000'. I'm sure you know what I mean. There's no performance gain and if you make other vectors work all software will break... :P well I'm sure you know this.

Sorry for even mentioning it, it was some desperate try to see the 4.5MB/s I saw once and once only instead of 4MB/s for IDE...

Keep it like it is, it's perfect for WHDLoad and the Quit key works great, only 1 game so far and it was probably the slave. MUCH better than the Matrix 1230 that I tried many years ago and probably lots of other possible Amiga setups...

And if it's like it is now yep Alpine9000, ACA500Plus will behave as plain A500 whether 7 or 42 MHz... you can trust it for development even more than the ACA500 that I also have.
Photon 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
Aca500 cfaux elpiloto support.Hardware 0 30 December 2014 23:35
ACA500 in A2000 - possible or not? amigoun support.Hardware 3 21 November 2014 20:09
ACA500 slowdown DonutKing support.Hardware 0 15 April 2014 13:50
ACA500 install gurth support.Hardware 19 23 March 2014 23:16
ACA500 - Who Will Sell This? Smakar support.Hardware 6 01 March 2013 10:37

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:33.

Top

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