English Amiga Board


Go Back   English Amiga Board > Support > support.WinUAE

 
 
Thread Tools
Old 17 September 2023, 17:09   #1
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,516
WinUAE 5.1.0 beta series

Some more chipset updates, including usual "ross test" support fixes/updates, and some new features and updates and others. I also have plans to rewrite part of chipset emulation yet again to support more extreme VHPOSW horizontal changes. Maybe during this beta series, maybe not..

https://download.abime.net/winuae/fi...nuae_5100b1.7z
https://download.abime.net/winuae/fi...ae64_5100b1.7z

Beta 1:

- Dark mode implemented, requires Windows 10 or newer. Default is follow Windows dark mode setting. Checkbox in Misc panel (3-state checkbox: follow Windows dark mode setting, always on, always off). This is ugly hack because Windows still does not officially support win32 based UI in native dark mode. Some elements have wrong brightness and plain dialog boxes still have original "light" colors. Command line "-theme dark" or "-theme light" can be used to force dark or light theme, overrides GUI setting.
- GUI window resize updates now in real time (with some flickering but there does not seem to be any easy ways to fix it. Yes, DWM supposedly does offscreen rendering but it does not seem to work with GDI elements)
- Emulation window dragging and resizing does not anymore pause emulation.

- Built-in (statically linked) Munt v2.7.0 MT-32/CM-32L emulator. Listed in MIDI out menu. ROM images needed, either in c:\mt32-rom-data\ or in <winuae rom path>\mt32-roms\. Uses same ROM file names and ROM version selection priority order as DOSBox. Compressed ROMs are not supported. MIDI audio is mixed with Paula audio.
- On the fly MIDI out option change didn't reconfigure serial port emulation properly.

- Added AT&T DSP3210 emulation, done by Wrangler. Not fully working yet, for example DSP->CPU interrupts are not working and because DSP emulator runs in separate thread, code that assumes DSP steals cycles (if DSP needs to do external memory accesses) from the CPU (if not cached by the CPU) can't work correctly. Used in not released AA3000 mainboard and new AA3000+ MB based on original AA3000 design. Listed in Expansion panel built-in config list. Usable in A3000 configs with Super DMAC (AA3000(+) configuration) but currently also supported in any A600/A12000/A4000 configurations that have Gayle/IDE enabled. Don't ask me what to do with it, it is not my problem For example check a1k.org DSP thread if interested.

- If OCS and >512k chip RAM: Advanced chipset 1M/2M Agnus options now set higher DMA addressing capability even if Agnus is OCS.
- Programmed mode register changes now immediately updates chipset emulation state, including current scanline length. Previously it had 1-2 frame delay. Host side window size/position is still recalculated only when new frame starts.
- Programmed beam counters enabled (VARBEAMEN=1) but no programmed hsync or vsync enabled (PAL or NTSC hardwired sync active): calculated visible width of display used hardwired horizontal cycle count, not programmed HTOTAL value. If HTOTAL was larger than 227, part of right border was not drawn.
- Recalculate display setup only if total scanlines, line length, hsync start or vsync start changes and difference is larger than 1. Previously display was reset and recalculated even if new display settings were identical (for example enabled VARBEAMEN with PAL or NTSC HTOTAL and VTOTAL)
- Football Director 2 dongle emulation. Again almost identical to Striker Manager and Multi-Player Soccer Manager dongles.
- Fast 68020+ modes didn't start pending interrupt immediately (started after following instruction) after MOVE to SR instruction that lowered interrupt mask. (Quick the Thunder Rabbit)
- Programmed mode + extreme overscan mode: right border might not have been fully visible.
- Full 68000 CPU tester sets retested (cycle counts, address errors, IPL timing etc. Excluding bus errors), no regressions found.
- ECS Agnus BPLCON0 SHRES and UHRES bits were ignored unless also ECS Denise was configured.
- Writing to V(H)POSW didn't flush any pending bitplane/blitter/sprite cycles. If V(H)POSW write modified current line number, all pending DMA accesses, even accesses that happened before V(H)POSW write, appeared in new line in DMA debugger.
- In some situations when bitplane count increased mid screen, next few cycles after change had wrong cycle allocation causing lower priority DMA channels (and CPU) to be blocked even if bitplane DMA didn't use all cycles.
- ECS/AGA, DDFSTRT already matched but bitplane DMA off: if DMA is switched on, bitplane sequencer starts 1 CCK earlier compared to start up time when DDFSTRT matches with DMA already on. (Turtle Party Intro / Image, bottom right scrolling logo corruption in ECS mode is now 100% correctly corrupted.)
- None serial port emulation mode and fast CPU configuration: transmit buffer empty SERDATR bit was not automatically cleared after writing to serial port, causing sender to hang if it wanted to transmit more byte(s).
- CIA latch=0/timer=0 special case handling updated. Fixed bug where timer=0 condition was detected incorrectly (Risky Woods sound effect glitches)
- Boot warp mode is now also activated when CPU executes RESET instruction.
- Integer scale + full window: Display panel windowed width and height was used instead of full window size (desktop size) when calculating scaling values.
- When Picasso96 screen dragging started with different size/depth screen mode behind, RTG display was uncessarily reset causing flicker.
- It was possible to read INTREQR with bit 15 set.
- Ultra extreme debug and Fields+ interlace mode: visible part of display was marked as blanked.
- UAE Boot ROM in indirect mode partially overwrote jump traps when system was soft reset, causing reboot loop depending on configuration. (Very old bug)
- Some scaling modes got confused if horizontal DIWSTOP was small value (which is actually large value, extends over $1c7 "limit")
- HAM mode + very early bitplane start (before hblank end) had horizontal offset and possibly also had random colors visible before bitplane start.
- Horizontal window/hblank/sprite positioning rewritten to support VHPOSW modifications and strobe cycle conflicts without special hacks.
- Horizontal blanking "lines" are now drawn in visible part of screen if Denise horizontal counter is out of sync with display start (for example strobe cycle conflict or VHPOSW was written). For example Colors / Mad Team corruption in ECS mode is now fully correct. (Corruption has more black lines)
- Other weird VHPOSW writes are now supported. VHPOSW test cases by ross.
- Allow AUDxPER=1, game Spaceport requires it. Previously min allowed audio period value was 4 to keep CPU usage lower if program keeps playing zero single sample continuously.
- Added Denise/Lisa horizontal counter to DMA debugger (value between Agnus/Alice counter and IPL level).
- DMA debugger first refresh slot strobe type was not always correct (Visual bug only)
- Do not blank display if chipset mode is invalid (if display resync blanking is enabled) but video port display adapter is active.
- Use hardwired syncs if video port adapter is configured and sync mode is combined. Fixes Video DAC 18 which sets bogus programmed hsync configuration, real HW works because Video DAC 18 generates the sync when it is active.
- DIWSTRT/DIWSTOP/DIWHIGH timing fix (affects only special cases where register is written almost at the same as old/new value would match). ECS Denise DIWHIGH has unexpectedly 1.5CCK delay compared to DIWSTRT and DIWHIGH which only have usual 1 CCK write delay.
- Refresh conflict emulation special case hacks removed, normal emulation handles it now (and also VHPOSW writes). Conflict and VHPOSW test cases like Colors / Mad Team and Smooth Copper / Up Front still work.
- Some badly configured native AGA modes were unstable (Super Street Fighter II Turbo CD32)
- On the fly A1000 Agnus/Denise model changes didn't work correctly.
- Randomize CPU start position after hard reset relative to raster position. Previously CPU was always started at HPOS=0/VPOS=0.
- Configurable random seed added (config entry "rndseed") rndseed=0 is default (randomized), any other value = static seed.
- Emulator internal random seed is now randomized at startup by default. Affects floppy mechnical timings and initial CPU startup delay after hard reset.

- -conlogfile <path to file> command line parameter: write all console debugger output to a file.
- Command line parsing was done after configuration validation, for example "-s joyportx=xyz" command line parameters didn't affect Game Ports panel until something else caused config file validation (for example emulation was started.). Old bug.
- Standard filter names and input panel "<none>" can be translated now.
- Quickstart Host Configuration menu first option renamed, "Default configuration" -> "Current host configuration". Added new option "Default host configuration" that resets host configuration to defaults.
- Quickstart selected Host Configuration was not activated when Quickstart panel was opened in Quickstart mode. It was only loaded when menu was changed. Also when menu is changed to "Default host configuration", reset configuration to defaults and then reload default.uae if it exists.
- Pressing "Set configuration" button now first loads selected host config (if any) before setting hardware config. "Current host configuration" = only hardware config is changed like previously.
- Click statefile load in GUI, cancel the dialog: default statefile was selected.
- Inserting archive in floppy drive now also tries to find any supported file type (disk images/executable) inside archive's subdirectories.
- hardfile2 -config entry's path used different escaping method when saving vs when loading. If path contained characters that needed escaping (in normal situations "," because it was used as a separator in old versions), backslashes disappeared when unescaped.
- "Autoclip screenshots" option now supports programmed native screen modes.
- uaedbg HUNK_RELOC32SHORT support. Memory allocation size larger than reserved pool crashed.
- Multiple 0x76 partitions per HD/card can be mounted now, previously only first was mounted and the rest become zero size non-existing drives.
- If 0x76 partition harddrive access was out of bounds read access (access outside of selected partition), do not complain and exit, only log it.
- If real harddrive access read or write fails due to some disk error or something preventing writes (like lack of admin privileges), return error code to AmigaOS side. Previously only written/read length was returned as zero which is not guaranteed to be detected as error condition.
- Hide all GPT drives in Add harddrive list.
- USB HID input device usage page check fixed, it accepted devices that had nothing to do with being input device. (Useless device(s) in Input device list)
- Support also 8 channel WASAPI mode (if no other channel modes are accepted), Sound BlasterX G6 requires this. (Maybe others too?)
- If sound driver does not support current channel setting but supports higher channel setting: only internally use higher channel mode, keep Sound panel sound channel setting.
- 64-bit host FPU mode FABS returned negative zero if input value was negative zero. Other negative values returned correct positive result.
- MMU mode MOVEM.x <regs>,-(An) with <regs> containing same register as target register: stored register content is after pre-decrement. Non-MMU mode was implemented ages ago (68020+ only).

A2410 emulation fixes (New Picasso96 driver uses many previously never [fully] used A2410 features)

- BT458 RAMDAC addressing fixed. Only address bits 0 and 1 are decoded, address bit 2 is used as read/write select line.
- TMS34010 host address load/data read automatic prefetch emulated. (Every time TMS34010 address register is written to and write autoincrement is not enabled, TMS34010 does immediate read from address, next data port read returns prefetched data and if read was autoincrement, new prefetch read is started immediately). Also fixes CGX4 A2410 driver mouse cursor color.
- A2410/native mode autoswitch and manual switch was unreliable in some situations.
- Display was not fully refreshed when for example emulator window size was changed.
- Overlay (Picasso96 and CGX use this to simulate hardware mouse cursor) positioning relative to graphics data fixed.
- Interlace support fixed.
- Horizontal/vertical panning supported.
- Missing plane masking (PMASK register) implemented. Not sure if it is fully correct. (Picasso96 A2410 uses it at least when drawing intuition menus), it was not implemented in original MAME TMS34010 emulation.
- A2410 display didn't re-activate after reset.
- A2410 stopped working with black screen if switched to mode less than 300 pixels tall.
Toni Wilen is offline  
Old 17 September 2023, 18:12   #2
paraj
Registered User
 
paraj's Avatar
 
Join Date: Feb 2017
Location: Denmark
Posts: 1,105
Thanks for the hard work! (and the debugger changes)

When it's convenient for you would you mind updating winuaeinclibs.zip to include the mt32 headers/libs?
paraj is offline  
Old 17 September 2023, 18:41   #3
Retro-Nerd
Missile Command Champion
 
Retro-Nerd's Avatar
 
Join Date: Aug 2005
Location: Germany
Age: 52
Posts: 12,444
Thanks for the MT32 support, Toni. Works great!
Retro-Nerd is offline  
Old 17 September 2023, 23:33   #4
rutra80
Registered User
 
Join Date: Jul 2019
Location: Poland
Posts: 308
Quote:
Originally Posted by Toni Wilen View Post
test cases like Colors / Mad Team and Smooth Copper / Up Front still work.
Hmm scroller in Colours / Mad Team has horizontal shift every 2nd line...

About the rest:
rutra80 is offline  
Old 17 September 2023, 23:47   #5
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,474
Quote:
Originally Posted by rutra80 View Post
Hmm scroller in Colours / Mad Team has horizontal shift every 2nd line...
I can't reproduce it.. in OCS everything seems to work fine.
Are you sure you don't have some strange setting? Can you post an image?
ross is offline  
Old 17 September 2023, 23:51   #6
kfasheldon
Registered User
 
Join Date: Oct 2006
Location: Ottawa, Canada
Posts: 54
Great work Toni, Thanks

Dropped MT32 roms in Zone if anyone needs the, hope they are working well.
kfasheldon is offline  
Old 18 September 2023, 00:54   #7
Retroplay
Lemon Curry ?
 
Retroplay's Avatar
 
Join Date: Sep 2004
Location: Denmark
Age: 49
Posts: 4,084
Quote:
Originally Posted by Toni Wilen View Post
ROM images needed, either in c:\mt32-rom-data\ or in <winuae rom path>\mt32-roms\.
I can can only make this work if I have my MT32 roms in "c:\mt32-rom-data".

If I put them in "\WinUAE\roms\mt32-roms" they are not detected.
I tried "\WinUAE\mt32-roms" and "\WinUAE\roms\mt32-rom-data" as well, not detected.

My files are named like this
CM32L_CONTROL.ROM (CRC32 B998047E)
CM32L_PCM.ROM (CRC32 4B961EBA)
MT32_CONTROL.ROM (CRC32 A7C1531B)
MT32_PCM.ROM (CRC32 573E31CC)

Can anyone else confirm this or have I missed something obvious here ?
I run WinUAE in portable mode (winuae.ini) if that's something to do with it.
Retroplay is offline  
Old 18 September 2023, 02:17   #8
rutra80
Registered User
 
Join Date: Jul 2019
Location: Poland
Posts: 308
Quote:
Originally Posted by ross View Post
I can't reproduce it.. in OCS everything seems to work fine.
Are you sure you don't have some strange setting? Can you post an image?
Managed to narrow it down to Default scaling on Filter tab when fullscreen (or just resize the window, also overscan dependent).

Last edited by rutra80; 18 September 2023 at 02:38.
rutra80 is offline  
Old 18 September 2023, 02:24   #9
rutra80
Registered User
 
Join Date: Jul 2019
Location: Poland
Posts: 308
Another bug:
Launch emulation in fullwindow, F12, on Quickstart tab pick Default host configuration, Set configuration, Reset - some 3 additional WinUAE little windows appear.

Also some strange, virtual, dummy ADFs mount?

Last edited by rutra80; 18 September 2023 at 02:33.
rutra80 is offline  
Old 18 September 2023, 07:19   #10
ross
Defendit numerus
 
ross's Avatar
 
Join Date: Mar 2017
Location: Crossing the Rubicon
Age: 53
Posts: 4,474
Quote:
Originally Posted by rutra80 View Post
Managed to narrow it down to Default scaling on Filter tab when fullscreen (or just resize the window, also overscan dependent).
Ok, now I see it
ross is offline  
Old 18 September 2023, 09:33   #11
Retro-Nerd
Missile Command Champion
 
Retro-Nerd's Avatar
 
Join Date: Aug 2005
Location: Germany
Age: 52
Posts: 12,444
Quote:
Originally Posted by Retroplay View Post
I can can only make this work if I have my MT32 roms in "c:\mt32-rom-data".

If I put them in "\WinUAE\roms\mt32-roms" they are not detected.
I tried "\WinUAE\mt32-roms" and "\WinUAE\roms\mt32-rom-data" as well, not detected.

My files are named like this
CM32L_CONTROL.ROM (CRC32 B998047E)
CM32L_PCM.ROM (CRC32 4B961EBA)
MT32_CONTROL.ROM (CRC32 A7C1531B)
MT32_PCM.ROM (CRC32 573E31CC)

Can anyone else confirm this or have I missed something obvious here ?
I run WinUAE in portable mode (winuae.ini) if that's something to do with it.

Yes, i can confirm it. The MT32 roms are only detected from the "c:\mt32-rom-data" path.
Retro-Nerd is offline  
Old 18 September 2023, 11:05   #12
AntiPontifex
Registered User
 
AntiPontifex's Avatar
 
Join Date: Feb 2012
Location: Peterborough, Ontario, Canada
Posts: 80
Thank you, Toni, for all of your work over the years. It is truly incredible.
AntiPontifex is offline  
Old 18 September 2023, 18:41   #13
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,516
Quote:
Originally Posted by Retroplay View Post
I can can only make this work if I have my MT32 roms in "c:\mt32-rom-data".

If I put them in "\WinUAE\roms\mt32-roms" they are not detected.
I tried "\WinUAE\mt32-roms" and "\WinUAE\roms\mt32-rom-data" as well, not detected.

My files are named like this
CM32L_CONTROL.ROM (CRC32 B998047E)
CM32L_PCM.ROM (CRC32 4B961EBA)
MT32_CONTROL.ROM (CRC32 A7C1531B)
MT32_PCM.ROM (CRC32 573E31CC)

Can anyone else confirm this or have I missed something obvious here ?
I run WinUAE in portable mode (winuae.ini) if that's something to do with it.
Works for me. Above names are supported (Checksum are not used, file names only)
<rom path in Paths panel>\mt32-roms\<rom images here>

Quote:
Originally Posted by rutra80 View Post
Another bug:
Launch emulation in fullwindow, F12, on Quickstart tab pick Default host configuration, Set configuration, Reset - some 3 additional WinUAE little windows appear.

Also some strange, virtual, dummy ADFs mount?
Confirmed. It thinks there are multiple monitors enabled (normally used for multimonitor, chipset in separate window, rtg in another etc)

Quote:
Hmm scroller in Colours / Mad Team has horizontal shift every 2nd line...
Also confirmed. (This is not directly related to filter)
Toni Wilen is offline  
Old 18 September 2023, 19:03   #14
Retroplay
Lemon Curry ?
 
Retroplay's Avatar
 
Join Date: Sep 2004
Location: Denmark
Age: 49
Posts: 4,084
Ah, it was my a mistake on my behalf.
My rompath was "." + Scan subfolders, the default setting. ".\Roms" does indeed work.
Sorry for the false alarm.
Retroplay is offline  
Old 20 September 2023, 15:49   #15
8bitbubsy
Registered User
 
8bitbubsy's Avatar
 
Join Date: Sep 2009
Location: Norway
Posts: 1,711
The 'PAL:High Res Laced' video mode seems to be broken if "Remove interlace artifacts" is enabled... Déjà Vu. Screenshot attached.
Attached Thumbnails
Click image for larger version

Name:	pal_hires_laced_broken.png
Views:	231
Size:	20.9 KB
ID:	80274  
8bitbubsy is offline  
Old 20 September 2023, 18:32   #16
Toni Wilen
WinUAE developer
 
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,516
Quote:
Originally Posted by 8bitbubsy View Post
The 'PAL:High Res Laced' video mode seems to be broken if "Remove interlace artifacts" is enabled... Déjà Vu. Screenshot attached.
Yes.. It always breaks if anything changes in chipset emulation. Again and again.. Not going to fix it until I am sure there are no other chipset updates. There is at least one update left to do..
Toni Wilen is offline  
Old 20 September 2023, 19:09   #17
Aardvark
Registered User
 
Join Date: Jan 2019
Location: Finland
Posts: 635
Munt stops working when trying to adjust volume (on Sound settings) while it's being used.
Aardvark is offline  
Old 20 September 2023, 21:52   #18
Viceroy
Registered User
 
Join Date: Jul 2006
Location: Sunderland
Posts: 946
Well Done Toni!
Viceroy is offline  
Old 21 September 2023, 01:50   #19
Pyromania
Moderator
 
Pyromania's Avatar
 
Join Date: Jan 2002
Location: Chicago, IL
Posts: 3,375
Nice updates as always, thanx.
Pyromania is offline  
Old 21 September 2023, 13:55   #20
8bitbubsy
Registered User
 
8bitbubsy's Avatar
 
Join Date: Sep 2009
Location: Norway
Posts: 1,711
Quote:
Originally Posted by Toni Wilen View Post
Yes.. It always breaks if anything changes in chipset emulation. Again and again.. Not going to fix it until I am sure there are no other chipset updates. There is at least one update left to do..
Ah I see, didn't know it was that sensitive to small code changes. I'll stop reporting it in the future.
I guess I'll start using a P96 video mode instead for my development environment.
8bitbubsy 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
WinUAE 3.1.0 beta series Toni Wilen support.WinUAE 305 06 June 2015 23:25
WinUAE 3.0.0 beta series (was 2.8.2/2.9.0) Toni Wilen support.WinUAE 1010 15 December 2014 13:41
WinUAE 2.6.0 beta series Toni Wilen support.WinUAE 271 14 May 2013 16:51
WinUAE 2.4.1 beta series Toni Wilen support.WinUAE 223 09 May 2012 16:16
WinUAE 1.5.1 beta series Toni Wilen support.WinUAE 242 12 August 2008 12:42

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

Top

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