libretro / vice-libretro

Versatile Commodore 8-bit Emulator
GNU General Public License v2.0
40 stars 70 forks source link

Cartridge change problems in x128 #525

Closed Vweber73 closed 2 months ago

Vweber73 commented 2 months ago

Whenever I change the cartridge in core options/media in 128 mode, the 128 resets but does not take into account the change, be it to choose another cartridge or to disable the cartridge. Also, if I start x128 in C64 mode, it seems that no cartridge can be loaded, even through there is one selected in core options /media.

Another question, is there any support for the VDC while in C64 mode? I am trying to use superchip 2 v1.2 that was released recently on forum64. To run it on a 128 to benefit from the 80-column mode, you have to start it in C64 mode, not 128, and then switch the display with use C128 then select output" u7:". But this has no effect in Vice, the VDC screen remains empty. Anything I'm missing?

Many thanks in advance and best regards

sonninnos commented 2 months ago

That cartridge thing behaves just the same also with C64 core, as in carts are not refreshing properly on change, and requires a full restart. Pretty sure it has always been like that at least with some carts, or did it start only after this update?

Pretty sure C128 in C64 mode means exactly that there is no C128 features available, or is it really possible with real hardware or standalone VICE? I heavily doubt that.

Vweber73 commented 2 months ago

I don't really know how it behaved before this update, I only got interested in cartridges recently with Comal.

Well the SuperChip II Cartridge is advertised as such, you need to start it in C64 mode and then use the 128 features, so it seems that was possible on real hardware. I also read that VDC was indeed accessible in C64 mode with dedicated code. I did not get this to work in the Windows Vice either, so maybe VICE core considers that C64 mode is just plain C64, with all 128 features disabled? In which case I won't be able to use the cartridge 128 features as they are meant to...

Vweber73 commented 2 months ago

Using the Superchip II cart, Trying to list a program after redirecting the output to u7: (the VDC 80-column screen) freezes the core and generates corrupted output. So I guess Vice 3.8 does not support something that is necessary for this to work...

theflyingape commented 2 months ago

I recall Elite 128 diskette did AUTOBOOT from 128 mode into C64 mode, I'll verify that. I'll also have to try the Elite 128 2.0 hack, which is supposed to run better using 128's 2mhz mode during VICII border draws. Allegedly, it was tested on THEC64 which is VICE 2.4 + REU emulation enabled.

Vweber73 commented 2 months ago

Thanks! And actually when loading the SC II cartridge in c64 mode it says "C128 detected, which suggests that even in C64 mode some bits indicates that you are actually running a 128...

sonninnos commented 2 months ago

I managed to make the cartridge core option refreshing operate better, so it will be included in the next batch once I figure out the remaining annoyances.

Vweber73 commented 2 months ago

Many thanks, much appreciated!