30 October 2021, 00:12 | #1 |
Moderator
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,602
|
Many Soundtracker versions cannot read the keyboard in WinUAE
Had an adventure this evening, tracing the Soundtracker heritage line.
Granted that they might all have a sus keyboard routine, these are made for KS1.3 and do work on real Amiga 500. With the default config (* see below edit) however, not one of them can read keyboard input. This essentially means that no-one can use many (if not all) Soundtracker (and Noisetracker, etc) versions in WinUAE (4.4.0). Examples are Noisetracker 1.1, 2.0, and this important version (ST2.3). Edit: on a whim, I did the dirty and loaded the Quickstart config, and the keyboard works in that. But for this config I've really only changed an absolute bare minimum of host settings. I recognize this... there's something very special about the Quickstart config that makes it break changing just a few settings. That is... close to unusable. Config attached. I've certainly not changed any Amiga keyboard settings, only a handful settings for recording purposes with that Quickstart config. And that breaks it. I also tried changing all relevant chip type checkboxes under Adv. Chipset under the attached config, and none made Amiga side keyboard work. Hope this helps. Last edited by Photon; 01 November 2021 at 13:31. |
30 October 2021, 11:23 | #2 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,505
|
It is bug in soundtracker, it breaks if there is any other CIA interrupt server before soundtracker's CIA interrupt server which it uses to read keyboard (which can't be right, keyboard handling is already done by exec)
Disable UAE boot ROM to "fix" it. |
30 October 2021, 13:13 | #3 |
Moderator
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,602
|
Thx Toni. However, I can't change the setting. It's grayed out if I go Quickstart > Start > F12, or double-click any of my configurations > F12. It's only available if I start WinUAE and load no config. Of course I need to load the config, so I can change this setting and save the config with the correct setting. If I disable it when starting WinUAE, then load or start a config, it's reset to the setting you see. (Extra info: starting the Quickstart config makes keyboard work as we know. I looked at this setting with the keyboard working, and this setting is the same as in screenshot.)
See attached screenshot. Is that the setting at the bottom? Last edited by Photon; 30 October 2021 at 13:20. |
30 October 2021, 16:07 | #4 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,505
|
It must be set before starting emulation. Note that you lose all UAE expansions (including harddrives/directories) if boot ROM is disabled.
It looks like ST does something horribly stupid (just check level 3 interrupt handler), it probably uses some stupid way to add level 2 interrupt server and fails if there are already some other handler(s). It is horrible ugly mix of system takeover and still trying to sort keeping the system running at the same time. |
30 October 2021, 16:17 | #5 |
Moderator
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,602
|
I've already changed it when starting WinUAE. Then when I double-click a config, it gets reset to the setting you see.
It seems like a very big workaround that removes a lot from emulation. It basically means you can't use Soundtracker, Noisetracker, etc at all unless you're prepared to deal with floppies, with all that entails (only a few modules fit on a disk, swapping, preparing, copying files). This was sad news. No other way? Did this happen on some real Amiga model, so that maybe there's a fix like a command to run before the tracker? |
30 October 2021, 16:31 | #6 |
WinUAE developer
Join Date: Aug 2001
Location: Hämeenlinna/Finland
Age: 49
Posts: 26,505
|
It seems to happen if there is any level 2 interrupt server with higher priority than 0. Nothing to do with emulation. Simply horrible code. I don't think it can work with any HD controllers that use level 2 interrupts, they generally have higher priority.
It seems to "work" if UAE handler has negative priority but I don't know how to test it if all later handler(s) are still called properly or if ST ignores them completely. EDIT: winuae.7z uses priority -1 if v34 or older KS version. Your task is to confirm if UAE directory harddrive still works under those ST versions. If it does not: I'll revert the update because in that case it is useless https://download.abime.net/winuae/files/b/winuae.7z (as usual, latest alpha version) Last edited by Toni Wilen; 30 October 2021 at 16:37. |
30 October 2021, 22:55 | #7 |
Moderator
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,602
|
Thx Toni. Will test ASAP
|
31 October 2021, 00:02 | #8 |
Registered User
Join Date: Aug 2004
Location:
Posts: 3,335
|
I seem to remember one old Soundtracker version (DOC Soundtracker IV???) jumped to a hard-coded address in the Kickstart 1.2 ROM. Maybe another reason for a keyboard routine not working?
|
31 October 2021, 00:25 | #9 |
Moderator
Join Date: Nov 2004
Location: Eksjö / Sweden
Posts: 5,602
|
Test result: Floppy and Harddrive directory works but not real CF card. Tested with 1.3. Awesome work Toni!
|
31 October 2021, 00:41 | #10 |
Zone Friend
Join Date: Mar 2004
Location: Middle Earth
Age: 40
Posts: 2,127
|
Photon: I used to use NoiseTracker 1.3x released by some German crew (I got it from janeway) that works for me under WinUAE (it must be because of this problem) it also allows you to change the keypad input between A1000/A500 and I find the A1000 better for Windows keyboard.
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
WinuAE + ADF-copy __ Read Real AmigaFloppy with WinUAE | Giants | support.WinUAE | 14 | 02 May 2019 11:17 |
Weird A1200 keyboard problems please read and help! | -Acid- | support.Hardware | 3 | 15 February 2018 11:28 |
Keyboard Problem with AOS 4.1 FE Classic in WinUAE.. Keyboard doesn't work! | QBit | support.WinUAE | 1 | 07 January 2015 13:43 |
can winuae read lha? | tarr | New to Emulation or Amiga scene | 6 | 26 September 2006 11:26 |
Can WinUAE read DVD? | Fred the Fop | support.WinUAE | 1 | 23 June 2003 10:18 |
|
|