English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   support.WinUAE (https://eab.abime.net/forumdisplay.php?f=5)
-   -   WinUAE 3.6.0 beta series (https://eab.abime.net/showthread.php?t=87810)

Toni Wilen 05 July 2017 20:38

WinUAE 3.6.0 beta series
 
3.6 beta series is now open.

Usual rule: Must confirm that bug/feature/whatever is 3.6 only. If it happens with previous official version: this is wrong thread.

http://www.winuae.net/files/b/winuae_3600b1.7z
http://www.winuae.net/files/b/winuae64_3600b1.7z

Beta 1:

Big CPU emulation update. More compatible (instruction cache) and data cache is now supported with MMU emulation.
Probably not that useful for normal users but developers may find it interesting.

Multi window (One window / Amiga monitor/output) support may be coming later.

Notes:
- 68020 more compatible/CE mode statefiles may not load ("CPU tracer" error dialog)
- Anything CPU related may have broken..
- And more!

- 68030 + memory cycle exact (without full CE): BSR didn't use data cache memory access routines.
- Softfloat fix: 68040+ will convert unnormal zeros (zero mantissa, non-zero exponent) to normals without datatype exceptions.
- 68040/060 MMU updates. MOVES was wrong in some situations, ATC status bit handling updated. (Originally Previous fix, first Next version that supported 68040 seems to do some strange things)
- 68030/040/060 MMU emulation internal fast path translation cache added, performance improved noticeably.
- Fully validate 68030 MMU instruction opcodes and generate F-line exception if unused but invalid bits are set. (Real 68030 confirmed)
- 68030 MMU PLOAD was unsupported.
- "EC" MMU option added, emulates access control registers only (renamed transparent translation registers in EC models).
- 68030 MMU + prefetch + instruction + data cache emulation mode. (Enabled when "More compatible" is ticked) CPU caches are now correctly located between CPU and MMU and they cache logical addresses.
- 68030 MMU + prefetch + instruction + data cache + "cycle-exact" emulation mode. (Same timing as 68030 non-MMU "CE" mode)
- 68030 data cache emulation is now optional.
- 68030 data cache emulation is internally disabled if UAE Boot ROM is active in non-indirect mode. It is not compatible with most UAE expansions because they access memory directly, bypassing the data cache and previous data cache hack made the cache mostly useless.
- 68040/060 MMU + full instruction cache emulation (when more compatible is set).
- 68040/060 data cache emulation (including write-through and copyback, MMU support), optionally available in more compatible mode.
- 68040/060 without FPU: many FPU instructions generated incorrect F-line stack frame contents, usually wrong PC or EA field.
- 68881/68882 FMOVECR undocumented ROM offsets are now 100% accurately emulated, offsets 0x40-0x7f return f-line exception.
- Currently emulated hardware cache inhibit signal is always active when CPU accesses anything non-RAM.

- It was not possible to change existing path with Select Directory/Select Archive or Plain File buttons.
- Do not reset manual geometry HDF setting when changing hardfiles.
- Automatically enable RDB mode if empty HDF is added and controller type is IDE or SCSI.
- Replaced ReadProfileString/WriteProfileString based ini support with custom routines that don't have 65536 byte section size limits. (Long ROM paths can easily become longer than 32k wide characters)
- SCSI expansion SCSI ID: don't show it when it is not selectable, also make sure it is 7 by default, previously in some situations it become 0.
- Internal AKS input events are now available in custom event strings (for example statefile save and restore)
- uaehf.device hardfiles/harddrives unit number is now user configurable.
- Joyport setting was not fully reset before loading Host-only config.
- Added UAE HD controller A2090 partition table support. RDB didn't exist when A2090 was released.
- Added extra validation after Windows illegal name check, if name is illegal, check what CreateFile() returns, name is invalid if it returns ERROR_INVALID_NAME. If open succeeds, return also illegal name status if GetFileType() does not return FILE_TYPE_DISK.
- Avioutput on the fly recording start used GUI sound frequency setting if recording was started with a shortcut. If GUI was never opened, sound recording rate become 44100Hz, creating video that had bad AV sync if real in use frequency was not 44100Hz.
- Don't support 360k floppy images in Amiga drive unless it is configured as 5.25" drive. (Fixes 360k DS vs 720k SS misdetection)
- Disable low latency vsync if calibration returns impossibly large values (>1000Hz). Seems to happen with some recent NVidia drivers.
- Do not create hidden inactive uaegfx modes if none of color modes fit in VRAM.
- Fixed uaegfx VRAM size check, some modes that almost filled the whole VRAM didn't appear in resolution list.
- Z3 RAM in manual mode was completely broken.
- Added blitter_speed_throttle config file entry, adjusts blitter speed if in non-ce/non immediate blitter mode. (0 = no change, 0.1 = 10% speedup and so on)
- If JIT FPU was ticked but JIT was off: FPU emulation used simple JIT FPU compatible FPU status register calculations, even if softfloat mode was selected.
- New undocumented feature emulated: Bitplane DMA can be restarted during last AGA FMODE>0 idle cycles after DDFSTOP.
- Bitplane overrun condition triggered incorrectly in rare situation where bitplane DMA is enabled after DDFSTOP on OCS. (Scoopex crash landing cracktro, possibly others)
- "Include CD and FMV Audio" and/or sound mode change when CD or FMV audio is playing is now supported.

- DKB RapidFire flash rom chip emulated. Contains boot rom but is also used to store "advanced scsi config" settings. (ROM scanner still detects flash rom update file, scsi config is located at the end of flash chip, far away from boot rom data)
- DKB 1230/1240/Cobra flash chip emulated, advanced scsi config utility config save supported. SCSI expansion is now optional.
- A2090 boot ROM didn't work without more compatible enabled.
- Hardfile SCSI emulator MODE SELECT (6) and (10) added, mostly does nothing, added because A2090 SCSI driver TD_FORMAT requires it.
- Host side read-only hdf was supposed to also force read-only HDF in Amiga-side.
- Automatically support software dumped A590/A2091 ROMs that don't have 0x2000 wraparound/offset.
- Comspec SA1000 KS rom image loader compatibility fix.
- Blizzard 1230 MK I appears to be functionally identical to MK II. Same boot ROM, same SCSI expansion.

- Added debugger 'I' command, send custom event string, same as Input panel uses (inject keycodes, change config like uae-configuration does..).
- *** DO NOT USE, it will truncate the file! (Added debugger 'L' command, load data from file (same parameters as 'S'))
- Added debugger fill memory command 'Wf <addr> <eaddr> <bytes or string like W>, repeats byte/string writing until end address.
- Added debugger assembler ('a') command! (Most 68020+ only special encoded opcodes are not supported)

- Ashcom AddHard emulation.
- A2090 Combitec ROM expansion support.
- FastATA 4000 MK I/II.
- Spirit Technology InMate SCSI controller.
- Emplant SCSI controller (and only SCSI)

Hardfile/drive geometry file support extended. (WIP)

- Geometry data can now include full ATA identity (512 bytes) and SCSI Inquiry/Mode pages.
- Data can be added to mounted IDE or SCSI emulated HDF or real harddrive to make drive appear exactly as drive which geometry data was read, exact same name appears in hdtoolbox, exact same logical CHS geometry and so on.
- WARNING: Identity data has priority, even if drive is smaller than size information stored in identity data.
- Added drive identity option to add harddrive panel. It tries to query ATA Identity data and all SCSI Inquiry and Mode pages. Note that USB uses SCSI protocol and if drive is ATA, ATA identity can be only read if USB adapter supports SCSI ATA Passthrough. Unfortunately most USB CF adapters don't support it. (USB SATA harddrives seem to commonly support it)
- Includes hack that enables reading CF ATA identity with Realtek chip based USB card readers. Uses vendor specific command to read memory region that contains ATA identity, requires card reinsert. Confirmed working with Kingston FCR-HS3 and Transcend TS-RDF9K. Probably works with most Realtek chip based card readers.

New ROMs:
- A590 v5.92 ROM.
- DataFlyer Plus v2.0 ROM. (This was stored in 16k ROM but because others were 32k and duplicated, I manually duplicated this one too)
- A2620 -02 and -03 ROM. (-05 remaining)
- Non-SCSI DKB 1230/1240/Cobra flash ROM update image.
- Replaced old DKB Ferret SCSI expansion compatible DKB accelerator ROM image with flash ROM update image. (Official flasher will create identical ROM image, also some CPU speed specific firmware data gets written at the end of flash image)
- Ashcom AddHard boot ROM.
- A2090 Combitec A2090a update ROM and 2x A2090 combitec expansion board ROMs.
- A2090 MacroSystem boot ROM.
- Vortex System 2000 v1.02 ROM.
- Spirit Technology InMate v1.0 ROM.

Ashcom Addhard:
- 5380 based, nothing special.
- Clone of Trumpcard, even ROM driver is a copy, only names have been changed! Nybble-wide loader code at the beginning of ROM has original IVS_SCSI.device string visible after converting it to bytes! Someone (who didn't know what or why there is nybble-wide data?) simply used hex-editor to change all visible strings?
- ADD_SCSI.device "ADDSCSI 2.0 (26 MAR 1992)". But driver version number is actually 4.9. (Original Trumpcard driver version?)

A2090 Combitec:
- A2090 ROM board that adds KS 1.2+ compatible autoboot support to original non-a variant of A2090. (Also works with A2090a if original ROMS are removed first)
- Shows boot screen.
- MacroSystem ROM uses same adapter. Different driver and boot screen.

FastATA 4000 MK I/II:
- Z3 ATA controller with 2 ports (Max 4 devices).
- Only v3 Boot ROM tested. (FastATA 3.0 (10 NOV 03)). Proper ROM dumps needed.

Sprit Technology InMate:
- Emulated as SCSI autoconfig board, not an accelerator board because it is 68000 board and does not require special address spaces.
- AIC-6250 SCSI chip.
- Fake DMA, word wide data port. Not fully hardware implemented, needs DMA status polling after each word read or write.
- It has worst RDB filesystem loader ever (at least in 1.0 ROM). Must be single hunk, no relocs, must have total length patched in first long word (I assume install disk patches it). Does not do any checks.
- Jumpers emulated. (ABOOT jumper mirrors Autoboot disabled -checkbox)

Toni Wilen 13 August 2017 18:11

3.6.0 beta series is finally officially open.

Mclane 13 August 2017 20:06

Thanks Toni, any chance of the new roms in the zone please :)

amilo3438 14 August 2017 00:01

A1200 Quickstart - seems same graphics problem on below demos:

ANDROMEDA-Nexus7
C_LOUS-Cosmicglide
QUARTEX-40kPartyWatEenGoreKop
CHRYSEIS&POSEIDON-botm
GODS-Olympe

PS. Thanks for CPU emulation update!

clenched 14 August 2017 03:17

3.6.0b1 32bit XP - Console debugger output trying to get the L command to work.:shocked
Code:

>S c:\test 40000 64 
Wrote 00040000 - 00040064 (100 bytes) to 'c:\test' *** Successful
>L c:\test 40000 64
Error reading file  *** Changes file size to 0
>S c:\test 40000 64
Wrote 00040000 - 00040064 (100 bytes) to 'c:\test' *** Successful
>L c:\test 40000    *** Left off last argument on purpose
S-command needs more arguments! *** Should say L?

I wish the last argument was optional i.e. load the whole file if not there.

amilo3438 14 August 2017 09:43

Quote:

Originally Posted by Toni Wilen (Post 1169650)

- Added blitter_speed_throttle config file entry, adjusts blitter speed if in non-ce/non immediate blitter mode. (0 = no change, 0.1 = 10% speedup and so on)

Have just noticed: it should be blitter_throttle instead of blitter_speed_throttle config!

Toni Wilen 14 August 2017 18:00

Quote:

Originally Posted by clenched (Post 1178031)
3.6.0b1 32bit XP - Console debugger output trying to get the L command to work.:shocked

Oops, sorry.. It shares same code with S but some tests were missing, causing it to open it for writing and truncating the file.. Also length wasn't optional.

Don't use until fixed.

mark_k 14 August 2017 19:18

On a high-DPI display, the text in the Hard Drive Information window (which opens when you click Read Identity) is really small.

Pyromania 14 August 2017 19:19

Any preliminary Video Toaster emulation goodness added yet please? No rush, just a kind question.

Toni Wilen 14 August 2017 20:58

Quote:

Originally Posted by amilo3438 (Post 1178014)
A1200 Quickstart - seems same graphics problem on below demos:

Fixed.

Quote:

Originally Posted by clenched (Post 1178031)
3.6.0b1 32bit XP - Console debugger output trying to get the L command to work.:shocked

Fixed.

Quote:

Originally Posted by amilo3438 (Post 1178048)
Have just noticed: it should be blitter_throttle instead of blitter_speed_throttle config!

Yes. (Internal variable name is longer)

Quote:

Originally Posted by Pyromania (Post 1178157)
Any preliminary Video Toaster emulation goodness added yet please? No rush, just a kind question.

No. First step needs to be multi-monitor support, without it testing VT emulation would be too painful, need to switch between two displays all the time..

Toni Wilen 14 August 2017 21:10

Quote:

Originally Posted by mark_k (Post 1178156)
On a high-DPI display, the text in the Hard Drive Information window (which opens when you click Read Identity) is really small.

Should be fixed now. (I think)

Quote:

Originally Posted by sigma63 (Post 1177999)
Hello Toni,

is there any description for the Syntax of these new options?

I need it for the ZIP-Tools, which check the Inquiry-Data for ZIP-100/250-Drives!

P.S.: Many thanks for the support of A2090 Combitec/Macro-System!

Please be more specific. What does the utility exactly expect? (This stuff is still work in progress)

ross 14 August 2017 22:33

Hi Toni, 030+MMU(normal or EC)+Cycle-exact(full) is broken.
My system do not boot anymore with this configuration.
Only 030, others processors do not have problems with cycle-exact.

The problem started with an early Beta0 version (i'm used to disable Cycle-exact to use equally the new great Debug commands ;)).

In note you have written
Quote:

- Anything CPU related may have broken..
so you're probably aware of the question and I wait before post config or test progs :)

Thanks for the new beta!
ross

Octopus66 15 August 2017 10:04

- "Include CD and FMV Audio" and/or sound mode change when CD or FMV audio is playing is now supported.

Looking forward to testing this patch for this CD audio update. Thanks Toni.

Update : Works flawlessy - a great update for those who emulate CD32.

ransom1122 15 August 2017 11:03

Hi Toni,

FYI

Came across a graphic problem with the game Wingnuts AGA

https://i.imgur.com/YUIAZVF.jpg

Went back to 3.5.0, and the game works fine...

amilo3438 15 August 2017 11:19

@ransom1122
I guess is already fixed in new developer version! (see on post #11)
(Because of similar graphics glitches as I have been reported for some demos.)
New developer version to check: http://www.winuae.net/files/b/winuae.7z

ransom1122 15 August 2017 11:45

Quote:

Originally Posted by amilo3438 (Post 1178328)
@ransom1122
I guess is already fixed in new developer version! (see on post #11)
(Because of similar graphics glitches as I have been reported for some demos.)
New developer version to check: http://www.winuae.net/files/b/winuae.7z

It seems the link of the Dev version of winuae does not have the graphic issue with Wingnuts AGA. I will stick with 3.5.0 for the time being..

Shaytan 15 August 2017 14:48

4 Attachment(s)
Noticed a problem in 3.6.0 beta 1 and 3.5.0 when trying to change CPU on the fly (from 68030 to 68040) and then run any program, it ends in a guru screen.
The issue doesn't occur in 3.4.0

Winuaelogs and config attached

Toni Wilen 15 August 2017 15:11

Quote:

Originally Posted by ross (Post 1178214)
Hi Toni, 030+MMU(normal or EC)+Cycle-exact(full) is broken.
My system do not boot anymore with this configuration.
Only 030, others processors do not have problems with cycle-exact.

Not enough information (this config boots if nothing enables MMU), so you must include programs used that enable MMU, when it crashes and more.

(Best option is bootable adf that duplicates the problem)

Quote:

Originally Posted by Shaytan (Post 1178339)
Noticed a problem in 3.6.0 beta 1 and 3.5.0 when trying to change CPU on the fly (from 68030 to 68040) and then run any program, it ends in a guru screen.
The issue doesn't occur in 3.4.0

This sounds a bit like unsupported but if it accidentally did work previously...

Code:

FRESTORE invalid frame version 1F 400fde02
6888x vs 68040+ FPU stack frame is different. This is correct behavior, previously this was ignored. It is very accidental feature because FPU change can easily cause stack corruption because stack frames have very different size.

I guess I can disable this check if Unimplemented FPU Emu is ticked (This option already makes all FPUs equal, sort of..)

Shaytan 15 August 2017 15:26

Quote:

Originally Posted by Toni Wilen (Post 1178343)
This sounds a bit like unsupported but if it accidentally did work previously...

Code:

FRESTORE invalid frame version 1F 400fde02
6888x vs 68040+ FPU stack frame is different. This is correct behavior, previously this was ignored. It is very accidental feature because FPU change can easily cause stack corruption because stack frames have very different size.

I guess I can disable this check if Unimplemented FPU Emu is ticked (This option already makes all FPUs equal, sort of..)

Thanks for the answer, it would be great if you could implement this option :)

ross 15 August 2017 16:34

3 Attachment(s)
Quote:

Originally Posted by Toni Wilen (Post 1178343)
Not enough information (this config boots if nothing enables MMU), so you must include programs used that enable MMU, when it crashes and more.

(Best option is bootable adf that duplicates the problem)

Ok, the problem is easy replicable (apart my system there is various adf plagued).

Initial setup (config attached):
- quickstart A1200 (+4MB fast, but memory config is not significative), so cycle-exat is autochecked;
- 68030 ticked;
- mmu ticked.

Use the ADF from my Delight-Overdose rework:
http://eab.abime.net/showpost.php?p=...1&postcount=29

After the load the system get stuck.
Attached some image of the loop: a subroutine return *before* the call.
In any other configuration the demo works.

My system use MMU, this demo not..

Bye!
ross


All times are GMT +2. The time now is 15:04.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.10705 seconds with 11 queries