English Amiga Board


Go Back   English Amiga Board > Support > support.AmigaOS

 
 
Thread Tools
Old 02 September 2021, 10:27   #1
alexh
Thalion Webshrine
 
alexh's Avatar
 
Join Date: Jan 2004
Location: Oxford
Posts: 14,337
Switch off / revert back VBR Move to fast

If you've got a program that expects the vector table not to have moved.. what is the most simple OS legal way of putting it back?

Why?

There are rumours that Ambermoon had issues that can be solved by turning off VBR moving.

I've never had these issues in 22 years of playing so I don't know if this is true. Worth testing.

Last edited by alexh; 02 September 2021 at 10:47.
alexh is offline  
Old 02 September 2021, 10:32   #2
dlfrsilver
CaptainM68K-SPS France
 
dlfrsilver's Avatar
 
Join Date: Dec 2004
Location: Melun nearby Paris/France
Age: 46
Posts: 10,412
Send a message via MSN to dlfrsilver
whdload is an awesome tool for catching program errors.

this is why a slave is a very good idea for a game this big. In case of error, whdload will give access to bug reports.
dlfrsilver is offline  
Old 02 September 2021, 17:57   #3
pipper
Registered User
 
Join Date: Jul 2017
Location: San Jose
Posts: 652
MMULib comes with a tool that uses a different approach: use the MMU to map the VBR to fastmem, but leave its virtual address at 0.
This should give best of both worlds. Backwards compatibility for programs expecting VBR at 0, yet have it in fastmem.
pipper is offline  
Old 02 September 2021, 20:32   #4
nogginthenog
Amigan
 
Join Date: Feb 2012
Location: London
Posts: 1,309
Quote:
Originally Posted by pipper View Post
MMULib comes with a tool that uses a different approach: use the MMU to map the VBR to fastmem, but leave its virtual address at 0.
This should give best of both worlds. Backwards compatibility for programs expecting VBR at 0, yet have it in fastmem.
I was going to say that

It's even better. Page zero is mapped to fastmem. This includes AbsExecBase which almost every program accesses.
nogginthenog is offline  
Old 02 September 2021, 21:55   #5
SpeedGeek
Moderator
 
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 60
Posts: 839
Quote:
Originally Posted by pipper View Post
MMULib comes with a tool that uses a different approach: use the MMU to map the VBR to fastmem, but leave its virtual address at 0.
This should give best of both worlds. Backwards compatibility for programs expecting VBR at 0, yet have it in fastmem.
Apparently, you didn't read this comment:

https://eab.abime.net/showpost.php?p...5&postcount=13

The MMUlib does not use the simple "Ad Hoc" solution of just remapping the Zero page. It uses a more "Complex" solution which may solve one compatibility problem at the expense of another.

FYI, The AmigaOS CPU "FastRom" command (up to OS 3.9) will move the VBR into Fast RAM on 020-030 with MMU systems but won't move it back to Zero if it's disabled.

Last edited by SpeedGeek; 03 September 2021 at 00:04.
SpeedGeek is offline  
Old 03 September 2021, 10:41   #6
Lisko
Registered User
 
Join Date: Mar 2021
Location: Avellino, Italy
Posts: 170
Quote:
Originally Posted by SpeedGeek View Post
Apparently, you didn't read this comment:

https://eab.abime.net/showpost.php?p...5&postcount=13

The MMUlib does not use the simple "Ad Hoc" solution of just remapping the Zero page. It uses a more "Complex" solution which may solve one compatibility problem at the expense of another.

FYI, The AmigaOS CPU "FastRom" command (up to OS 3.9) will move the VBR into Fast RAM on 020-030 with MMU systems but won't move it back to Zero if it's disabled.
The nice thing about MMULib's MuFastZero is that you can enable/disable it in real-time and once disabled your system is in the same state as before you enabled it and you can run problematic programs just fine.
For example as I found that the nommu and novbrmove whdload options are, reasonably, incompatible with mufastzero I simply disable and re-enable it using whdload's startup and cleanup scripts. Other programs incompatible with it that I found are some demos that require disabling mufastzero too.
Lisko is offline  
Old 03 September 2021, 14:07   #7
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Just a general note: the MMU slows down memory accesses a bit (depending on the MMU type, on how it's programmed and what it is asked to do); therefore, if not needed to get the hardware to work properly and/or for other functional requirements (e.g. detecting memory hits, remapping the Kickstart ROM to FAST RAM on boards which can't do that automatically, etc.), one should evaluate whether MMU usage is actually beneficial.
Personally, I wouldn't use it just to remap the vectors table in FAST RAM.
saimo is offline  
Old 03 September 2021, 14:40   #8
Lisko
Registered User
 
Join Date: Mar 2021
Location: Avellino, Italy
Posts: 170
In general yes @saimo you're right and with the mmu enabled on an 030 I noticed that I/O operations are the most affected and slowed down. Using mufastzero for remapping 0 page, SSP and Exec in fast ram I instead noticed the opposite with boosted and faster I/O speed and also my system seems overall snappier than ever using the mmu and mufastzero than with them disabled.
Lisko is offline  
Old 03 September 2021, 15:53   #9
SpeedGeek
Moderator
 
SpeedGeek's Avatar
 
Join Date: Dec 2010
Location: Wisconsin USA
Age: 60
Posts: 839
Quote:
Originally Posted by saimo View Post
Just a general note: the MMU slows down memory accesses a bit (depending on the MMU type, on how it's programmed and what it is asked to do); therefore, if not needed to get the hardware to work properly and/or for other functional requirements (e.g. detecting memory hits, remapping the Kickstart ROM to FAST RAM on boards which can't do that automatically, etc.), one should evaluate whether MMU usage is actually beneficial.
Personally, I wouldn't use it just to remap the vectors table in FAST RAM.
Yes, I have explained this (several times before). For 020-030 systems don't enable the MMU unless there is good reason to do this. Using the VBR imposes no performance penalty but the MMU does.

Also, even when there is a good reason to use the MMU keep in mind that how the MMU is configured can vary significantly in performance:

https://eab.abime.net/showthread.php?p=1303345

For 040-060 systems the MMU must be enabled to manage the Copyback and Non-Cache modes for the complete Amiga memory map. But there can still be compatibility problems with the "Complex" Zero page solution as noted above.

Note: The RemapZero tool included with TurboMMU040+ uses the simple "Ad Hoc" method (so it remaps the Zero page and nothing else).
SpeedGeek is offline  
Old 05 September 2021, 21:21   #10
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 787
Quote:
Originally Posted by Lisko View Post
In general yes @saimo you're right and with the mmu enabled on an 030 I noticed that I/O operations are the most affected and slowed down. Using mufastzero for remapping 0 page, SSP and Exec in fast ram I instead noticed the opposite with boosted and faster I/O speed and also my system seems overall snappier than ever using the mmu and mufastzero than with them disabled.
Opposite experience here: on my A1200 + Blizzard 1230IV, after removing MuMove4K and MuFastZero, the transfer speed of the CF connected to the internal IDE increased by about 141 kB/s.
saimo 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
CacheControl and VBR from bootblock h0ffman Coders. Asm / Hardware 11 26 May 2021 17:57
fast mouse move loose offset values in P96 full HD screen bernd roesch support.WinUAE 2 24 April 2018 13:20
Fast switch Port 1 mouse/ gamepad? jimmy2x2x support.WinUAE 3 04 January 2015 09:11
Anyway to revert back to old style menu system? Gordon project.ClassicWB 7 01 June 2011 20:40
WTB: A500 Accel Must Have Switch to Go Back to 68K Mode kjmann14 MarketPlace 0 26 March 2009 21:01

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

Top

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