Author Topic: BassMidi illegal instruction exception (0xC000001D) on non-SSE CPU  (Read 446 times)

Falcosoft

  • Posts: 167
Hi Ian,
accidentally I have noticed that the last version of Bassmidi that runs on non-SSE CPU is the last official one namely 2.4.14.1 The other versions I have (2.4.14.8 and 2.4.14.14) both give an exception 0xC000001D right after BASS_MIDI_FontInit/BASS_MIDI_StreamSetFonts calls so I cannot even call BASS_MIDI_StreamCreate.
I tested this on PCem 17 that properly emulates earlier CPUs without SSE. Bassmidi versions 2.4.14.1 and earlier work perfectly with PCem emulation (P1 120, P1 MMX 166, P2 233).
I don't know if this is intentional or not but I cannot see this new requirement documented anywhere.
« Last Edit: 6 Nov '23 - 15:21 by Falcosoft »

Ian @ un4seen

  • Administrator
  • Posts: 25612
Yes, the BASS 2.4.17 release requires an SSE supporting CPU on x86 platforms (noted in the changelog), and all add-ons built since then (12/10/2022) do too. I figured non-SSE CPUs are extremely rare nowadays and it wasn't worth hindering performance for them. SSE support was previously detected/enabled at runtime for time-critical stuff, but letting the compiler assume an SSE-supporting CPU allows it to better optimize other things too.

Falcosoft

  • Posts: 167
Yes, the BASS 2.4.17 release requires an SSE supporting CPU on x86 platforms (noted in the changelog), and all add-ons built since then (12/10/2022) do too. I figured non-SSE CPUs are extremely rare nowadays and it wasn't worth hindering performance for them. SSE support was previously detected/enabled at runtime for time-critical stuff, but letting the compiler assume an SSE-supporting CPU allows it to better optimize other things too.

Thanks for the info!
I have noticed that SSE requirement is also mentioned in the new BassAsio 1.4.2.0 release. I have version 1.4.1.2 of bassasio.dll before this new release. But according to the above rule (it is made after 12/10/2022) this version is also SSE only. Is it true?

And a last question: How can we access/download older (last) versions of your libraries before this mandatory SSE change?
« Last Edit: 12 Nov '23 - 19:43 by Falcosoft »

Ian @ un4seen

  • Administrator
  • Posts: 25612
Yes, I believe that BASSASIO build would have required SSE.

Old non-SSE versions aren't currently available, but let me know which you need and I'll dig them out of storage.

Falcosoft

  • Posts: 167
Yes, I believe that BASSASIO build would have required SSE.

Old non-SSE versions aren't currently available, but let me know which you need and I'll dig them out of storage.

Hi,
If it is not too tiresome for you I would like to get the last non-sse versions of Bass, BassMidi, BassASIO libraries (I can compile non-see version of Bass_VST myself).
Thanks in advance.

Ian @ un4seen

  • Administrator
  • Posts: 25612
Here you go:

   www.un4seen.com/stuff/bass-nosse.zip

The current BASS_VST release (2.4.1) is from before the SSE change, so SSE still isn't required by it. Let me know if you need any other add-ons.