English Amiga Board


Go Back   English Amiga Board > Other Projects > project.WHDLoad

 
 
Thread Tools
Old 26 February 2016, 09:17   #1
Yulquen74
Registered User
 
Join Date: May 2013
Location: Kleppe / Norway
Posts: 255
quit key on 68000 (non-vbr) systems

Are there any special code in WHDLoad to support quit key on systems that
lack VBR? The ACA500, Minimig and the upcoming Zeus supports standard quit key afaik.

Please correct me if Im wrong:

The end of the ROM contains some index bytes that is used to generate interrupt vector addresses, and with VBR it is possible to alter the location of those vectors, again making it possible to insert custom interrupt code to detect stuff like keypresses.

Is regular 68000 systems able to use quit key by the means of having ROM in same address space in RAM, and then changing the content of the "ROM" index bytes?

The reason for asking is a desire to implement the feature on my own simple
accelerator, if it is not too complicated.

Thanks in advance for any replies.
Yulquen74 is offline  
Old 26 February 2016, 16:05   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,515
ACA500 method is described in ACA500 hardware documentation (http://wiki.icomp.de/wiki/ACA500)

WHDLoad uses it via aca.resource, there is no standard how to enable/disable it.
Toni Wilen is offline  
Old 26 February 2016, 17:14   #3
Wepl
Moderator
 
Wepl's Avatar
 
Join Date: Nov 2001
Location: Germany
Posts: 866
Quote:
Originally Posted by Yulquen74 View Post
Are there any special code in WHDLoad to support quit key on systems that
lack VBR? The ACA500, Minimig and the upcoming Zeus supports standard quit key afaik.
WHDLoad supports the ACA500 as Toni told and the unreleased Zeus in a similar way.
Quote:
Originally Posted by Yulquen74 View Post
The end of the ROM contains some index bytes that is used to generate interrupt vector addresses, and with VBR it is possible to alter the location of those vectors, again making it possible to insert custom interrupt code to detect stuff like keypresses.
AFAIK the bytes at the end of ROM (end of address space of the cpu) are only used on 68000. The hardware tells the way how to obtain the vectors. The vbr specifies the base address for all interrupt and exception vectors (0 on 68000).
Quote:
Originally Posted by Yulquen74 View Post
Is regular 68000 systems able to use quit key by the means of having ROM in same address space in RAM, and then changing the content of the "ROM" index bytes?
I rather think it snoops the bus during vector fetch and redirects the memory read.
Wepl is offline  
Old 26 February 2016, 17:38   #4
Yulquen74
Registered User
 
Join Date: May 2013
Location: Kleppe / Norway
Posts: 255
Ok, thanks for the clarification.

I have looked at the ACA500 manual, and the implementation seems easy enough to
understand, but if WHDLoad uses specially written software to access the actual config bit to enable the VBR move, even via an ACA spesific software layer, theres no point of pursuing this any further.
Yulquen74 is offline  
Old 04 March 2016, 08:15   #5
jotd
This cat is no more
 
jotd's Avatar
 
Join Date: Dec 2004
Location: FRANCE
Age: 52
Posts: 8,196
Bert, would it be possible to install VBLANK & KBINT on 68000 when calling resload functions?
If not already installed, then install VBLANK & KBINT which check for quitkey and then call the original value.
May work in a lot of slaves.
jotd is offline  
Old 04 March 2016, 18:01   #6
Wepl
Moderator
 
Wepl's Avatar
 
Join Date: Nov 2001
Location: Germany
Posts: 866
Yes, that would work for some installs.
Not for installs which do not call a resload function after init the interrupt vectors. I think there are a bunch of games which load and then run the code without further resload calls.
Another problem may arise if the vectors are saved and restored multiple times. This may cause whdload saved vector to be wrong (game has saved the by whdload overwritten vector and later restores it instead the vector previous active by the game itself).
Wepl 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
Whdload quit key feature with a plain 68000 Yulquen74 Hardware mods 3 25 February 2016 23:08
Error in game VBR detected... franeti project.WHDLoad 1 22 April 2015 23:43
FS-UAE 2.5.6dev Amiga Key (Windows key) pops up the start menu Marskilla support.FS-UAE 3 23 September 2014 23:18
Changing Quit Key for Amiga 600 cleland909 project.WHDLoad 33 03 June 2011 20:41
Pc Keyboard Quit key? thanius project.WHDLoad 4 30 November 2010 21:27

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 23:47.

Top

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