English Amiga Board Amiga Lore


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 01 June 2016, 21:51   #1
BlankVector
Registered User
 
Join Date: Jun 2012
Location: Paris, France
Posts: 148
ROM requires a 68020 with EmuTOS

With recent WinUAE versions, I can't run EmuTOS with 68000 anymore. When I try to do so, I get a WinUAE message: "The selected system ROM requires a 68020 with 32-bit addressing or 68030 or higher CPU.". This is definitely wrong for EmuTOS. Worse of all, that message box can't by bypassed. The only solution is to kill the WinUAE task.

Actually, at startup, EmuTOS detects the actual CPU by trying advanced instructions and catching eventual exceptions. Maybe this is what triggers this message.

Maybe the best solution would be to detect EmuTOS at WinUAE startup and and disable those errors? Or at least add add an option to disable that message?
BlankVector is offline  
AdSense AdSense  
Old 02 June 2016, 09:39   #2
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,565
There has to be something more going on because that message only appears if program tries to execute 68020+ MOVEC without CPU support, PC is inside KS ROM address space and illegal instruction exception vector points to address 0.
Toni Wilen is online now  
Old 02 June 2016, 11:01   #3
BlankVector
Registered User
 
Join Date: Jun 2012
Location: Paris, France
Posts: 148
See EmuTOS startup source.

Code:
        move.l  #vbr_ok,16     // must be 68000 if we get illegal instrn error
        moveq   #0,d0
        MOVEC_D0_VBR           // initialise VBR to zero
vbr_ok:
Quote:
Originally Posted by Toni Wilen View Post
if program tries to execute 68020+ MOVEC without CPU support
Yes, EmuTOS always use MOVEC at startup, in any case.

Quote:
Originally Posted by Toni Wilen View Post
PC is inside KS ROM address space
Yes, that's in the EmuTOS ROM at 0x00fc0000.

Quote:
Originally Posted by Toni Wilen View Post
illegal instruction exception vector points to address 0.
It is initialized just before movec, see quoted code.

So there is something else
BlankVector is offline  
Old 02 June 2016, 11:06   #4
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,565
Tested. It is emutos bug, it writes to $10 before ROM overlay is switched off.

Dialog not quitting emulation and returning to GUI is winuae bug
Toni Wilen is online now  
Old 02 June 2016, 11:15   #5
BlankVector
Registered User
 
Join Date: Jun 2012
Location: Paris, France
Posts: 148
Oh. So you mean that when EmuTOS writes to address 16, this actually tries to write to the ROM? How bad

I don't know much the Amiga hardware. Could you please remind me what triggers the remapping of address 0 to RAM?
BlankVector is offline  
Old 02 June 2016, 11:17   #6
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 42
Posts: 19,565
Yes, it writes to ROM (=does nothing) and ROM has zero at offset $10.

Emutos did this previously (and it is still in sources, amiga2.S, so where does that extra code come from?)

// Set up port A on the first CIA (8520-A).

move.b #3,0xbfe201 // Set low two bits for output.
move.b #2,0xbfe001 // Set boot ROM off, power light dim.
Toni Wilen is online now  
Old 02 June 2016, 13:37   #7
BlankVector
Registered User
 
Join Date: Jun 2012
Location: Paris, France
Posts: 148
Thanks for the hint.
The code you quoted is called from startup.S:

Code:
        lea     amiga_startup_ret,a6
        jmp     amiga_startup
amiga_startup_ret:
But long ago we made refactorings there, and that code slipped down after the first MOVEC

I will make tests and report here. This should be trivial to fix in EmuTOS.
BlankVector is offline  
Old 09 June 2016, 09:05   #8
AnnaWu
Registered User
AnnaWu's Avatar
 
Join Date: Dec 2012
Location: Germany
Posts: 429
It seems the new snapshot (emutos-amiga-20160606.zip) is working on WinUAE and 68000 CPU
https://sourceforge.net/projects/emu...hots/20160606/

- Improve floppy speed
- Respect standard TOS usage of DIP switch 8
- Fix vq_curaddress(), vs_curaddress()
- Clamp text cursor coordinates to screen dimensions
- Fix boot on Amiga with 68000 CPU
- Improve performance of Tgetdate()/Tgettime()
- Add _5MS cookie on non-Atari hardware
AnnaWu is offline  
Old 09 June 2016, 09:43   #9
BlankVector
Registered User
 
Join Date: Jun 2012
Location: Paris, France
Posts: 148
Indeed.
Sorry, I forgot to report the fix here.
BlankVector is offline  
AdSense AdSense  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
EmuTOS for Amiga BlankVector News 200 13 September 2017 22:22
IDE trouble with 68060 + EmuTOS BlankVector support.WinUAE 6 28 June 2016 01:28
We NEED something like EmuTOS Antiriad Amiga scene 10 25 June 2012 00:21
Amateur requires help with LHA files..... THEGMAN support.WinUAE 3 27 September 2010 11:27
Slamtilt AGA requires Kickstart, but i got it! cybermat project.Killergorilla's WHD packs 12 06 January 2008 23:04

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 22:16.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.14059 seconds with 11 queries