Comments

Log in with itch.io to leave a comment.

Hello

Running latest CSpect  1 19 6 1 on a MAC M1 I get the error 

 Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSPlaceholderDictionary initWithObjectsAndKeys:]: second object of each pair must be non-nil

Same for all the versions from 2_19_5_0 not tried with previous versions.

Running the command below with the 2 Gb image.

mono cspect.exe -w3 -basickeys -zxnext -nextrom -mmc=cspect-next-2gb.img -sound


Any suggestions on what is missing?

-sound can not be last, the game or image needs to be last.

try

mono cspect.exe -sound -w3 -basickeys -zxnext -nextrom -mmc=cspect-next-2gb.img

Deleted 1 day ago
(1 edit)

The command line should just be

C:/zxNext/CSpect/CSpect.exe -w4 -r -zxnext c:/zxNext/Cspect/Beast.nex

Cheers Mike.. I see my error -nextrom  (removed now works as expected.)

Fab!!! I'll try and put some additional error checking in, see if I can reduce these errors.

Hey Mike. I have been playing around with CTC timers/counters in Cspect and cannot get them to cascade, they only operate individually. Have confirmed that they cascade on real Next hardware. 

Is this a know issue?

I'm not sure. It's been in for a while, so I'm not sure what state it's in. One timer certainly works, but I'm unsure if anyone has used the cascading timers....
I'm also not sure what I used to test them, as I can't find any cascading demos...

If you have a simple example - with source, then I can take a look....

Hi Mike. Have just tried 2.19.6.0 with the 2.07l distro. Running inder linux with mono. It will run fine without adding the .nex file to load on the command line.
If I add the .nex file to run on the command line it fails - see sample output below.


Same command line works with 2.19.5.1

mono CSpect.exe --zxnext=cspect -r -esc -tv -brk -w4  -zxnext -nextrom -map=../project.map -mmc=../../sdcard/cspect-next-2gb.img ../demo_3d.nex

#CSpect Start

Next ROM enabled

Unhandled Exception:

System.NullReferenceException: Object reference not set to an instance of an object

  at esxDOS.CRST8.CloseAllHandles () [0x00000] in <29fc5635479b49278035972ddca4cbbc>:0 

  at esxDOS.CRST8.Reset () [0x00000] in <29fc5635479b49278035972ddca4cbbc>:0 

  at a.O.C () [0x0001c] in <f076d33faaf04d5aa17584882cc10df4>:0 

  at A.r.F () [0x00000] in <f076d33faaf04d5aa17584882cc10df4>:0 

  at A.r.b (System.String ) [0x00004] in <f076d33faaf04d5aa17584882cc10df4>:0 

  at a.A.a (System.String[] ) [0x004ef] in <f076d33faaf04d5aa17584882cc10df4>:0 

[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set to an instance of an object

  at esxDOS.CRST8.CloseAllHandles () [0x00000] in <29fc5635479b49278035972ddca4cbbc>:0 

  at esxDOS.CRST8.Reset () [0x00000] in <29fc5635479b49278035972ddca4cbbc>:0 

  at a.O.C () [0x0001c] in <f076d33faaf04d5aa17584882cc10df4>:0 

  at A.r.F () [0x00000] in <f076d33faaf04d5aa17584882cc10df4>:0 

  at A.r.b (System.String ) [0x00004] in <f076d33faaf04d5aa17584882cc10df4>:0 

  at a.A.a (System.String[] ) [0x004ef] in <f076d33faaf04d5aa17584882cc10df4>:0 

AL lib: (EE) alc_cleanup: 1 device not closed

what command line do you use?

Hi - the exception happens when I quite cspect so that seems "normal"!
As above, I used "mono CSpect.exe --zxnext=cspect -r -esc -tv -brk -w4  -zxnext -nextrom -map=../project.map -mmc=../../sdcard/cspect-next-2gb.img ../demo_3d.nex"

It seems to just exit back to the command prompt without running the .nex file.

(2 edits)

Sorry... not following. It dies at as soon as you run it?
I'm running it on my VM and it seems fine here... Can you try the  beast.nex demo? It's fine here.
That command line is a little odd...
CSpect -zxnext <file.nex>  
this is all you should need.

(2 edits)

ok, yes it works with your command line and beast and also with my demo_3d.nex file though the screen output is different but I can check that separately.

I will change my command line.

Thanks for your help :)

it looks like you need a space -mmc=[space]<path>, see my comment above, I've been experimenting with the different versions and command lines.

(1 edit)

The Level 9 Compilation for Spectrum Next has stopped working in CSpect 2.16.0 and later, it works fine in CSpect 2.15.2 and earlier. I used CSpect 2.15.2 when testing it for CSpect and that was a bit sloppy of me, I should have used the latest version.

The problem seems to be the esx_f_stat() function in Z88DK which uses the esxDOS F_STAT call. This function is used to determine if the game is a single-file game (gamedata.dat) or a multi-file game (gamedat1.dat, gamedat2.dat, ...). The esx_f_stat() function returns zero if the F_STAT call was successful and non-zero if an error occurred.

As I understand it, CSpect simulates a subset of the esxDOS calls on top of the host file system. In CSpect 2.15.2 and earlier, the simulated esxDOS F_STAT call worked fine when CSpect was started with the -mmc option and a specified directory. Maybe esxDOS F_STAT only works with an actual SD card image in CSpect 2.16.0 and later, and not in its simulated form?

For reference, this is the command-line used to start one of the games in the Level 9 compilation:

CSpect.exe -w4 -tv -zxnext -mmc=D:\level9.run\adventure-quest\ D:\level9.run\adventure-quest\level9_512.nex

(1 edit)

esxDOS has changed significantly, so it's possible. If I can get a hold of it, I'll take a look.
EDIT: got it here, and  see the issue - taking a look now.

(+1)

Now fixed, and uploaded

Thanks Mike, the new version works perfectly!

I does not open, when I run my bat file, it just close the bat file

(1 edit)

Do the included demos run? beast.bat etc.?
Does your batch file boot into 48K basic?  if so... add -zxnext to the command line.
I've a fix for this coming....

Thank you Mike, it is now running

I've updated to fix a n F2 load crash when you startup in 48k mode

I'm unable to start CSPECT booting with the Next rom, or launching my own code with no rom from the command line. The Next OS is Running a 2.06H rom.  Previously had no problems with earlier CSPECT versions.

MacOS Monterey 12.6

cheers Mike - I'll take  a look...

I'm running it fine  here... I unzipped into a clean folder and ran with
Foldertest\CSpect.exe  -w3 cspect-next-16gb.img
So not sure what's different with yours....
Does it run the included demos (beast, parallax, mod etc)?

Thanks.

 Still no joy.

This is the output from terminal after running with a clean folder ~ \mono CSpect.exe  -w3 cspect-next-16gb.img

Unhandled Exception:

System.TypeInitializationException: The type initializer for 'System.Drawing.GDIPlus' threw an exception. ---> System.DllNotFoundException: libgdiplus.dylib assembly:<unknown assembly> type:<unknown type> member:(null)

  at (wrapper managed-to-native) System.Drawing.GDIPlus.GdiplusStartup(ulong&,System.Drawing.GdiplusStartupInput&,System.Drawing.GdiplusStartupOutput&)

  at System.Drawing.GDIPlus..cctor () [0x000b0] in <6bff38d4f68d4314b3cadf6dff6c9c99>:0 

   --- End of inner exception stack trace ---

  at System.Drawing.Icon.GetInternalBitmap () [0x00008] in <6bff38d4f68d4314b3cadf6dff6c9c99>:0 

  at System.Drawing.Icon.ToBitmap () [0x00018] in <6bff38d4f68d4314b3cadf6dff6c9c99>:0 

  at (wrapper remoting-invoke-with-check) System.Drawing.Icon.ToBitmap()

  at OpenTK.Platform.SDL2.Sdl2NativeWindow.set_Icon (System.Drawing.Icon value) [0x0001e] in <9314f5d039f340638e3a78d50aa1a6d0>:0 

  at OpenTK.NativeWindow.set_Icon (System.Drawing.Icon value) [0x00006] in <9314f5d039f340638e3a78d50aa1a6d0>:0 

  at A.y..ctor () [0x000b2] in <6a8159a131e9420581b0f73a3031e72c>:0 

  at a.Y.A (System.Int32 , System.Int32 ) [0x00016] in <6a8159a131e9420581b0f73a3031e72c>:0 

  at a.A.a (System.String[] ) [0x00343] in <6a8159a131e9420581b0f73a3031e72c>:0 

[ERROR] FATAL UNHANDLED EXCEPTION: System.TypeInitializationException: The type initializer for 'System.Drawing.GDIPlus' threw an exception. ---> System.DllNotFoundException: libgdiplus.dylib assembly:<unknown assembly> type:<unknown type> member:(null)

  at (wrapper managed-to-native) System.Drawing.GDIPlus.GdiplusStartup(ulong&,System.Drawing.GdiplusStartupInput&,System.Drawing.GdiplusStartupOutput&)

  at System.Drawing.GDIPlus..cctor () [0x000b0] in <6bff38d4f68d4314b3cadf6dff6c9c99>:0 

   --- End of inner exception stack trace ---

  at System.Drawing.Icon.GetInternalBitmap () [0x00008] in <6bff38d4f68d4314b3cadf6dff6c9c99>:0 

  at System.Drawing.Icon.ToBitmap () [0x00018] in <6bff38d4f68d4314b3cadf6dff6c9c99>:0 

  at (wrapper remoting-invoke-with-check) System.Drawing.Icon.ToBitmap()

  at OpenTK.Platform.SDL2.Sdl2NativeWindow.set_Icon (System.Drawing.Icon value) [0x0001e] in <9314f5d039f340638e3a78d50aa1a6d0>:0 

  at OpenTK.NativeWindow.set_Icon (System.Drawing.Icon value) [0x00006] in <9314f5d039f340638e3a78d50aa1a6d0>:0 

  at A.y..ctor () [0x000b2] in <6a8159a131e9420581b0f73a3031e72c>:0 

  at a.Y.A (System.Int32 , System.Int32 ) [0x00016] in <6a8159a131e9420581b0f73a3031e72c>:0 

  at a.A.a (System.String[] ) [0x00343] in <6a8159a131e9420581b0f73a3031e72c>:0 

(1 edit)

Oh wow.... its crashing adding the icon to the window! What the actual hell!?!?!
Via Window.set_Icon() 

Does it work running any of the demos? Running the "beast.bat" file?

Oh wait... you're on MAC aren't you... interesting, might be a mono bug with the window icon. I can put a check around that for you. But please try the  supplied demos just to let me know it's consistent.

Ok, I tried starting the the nex files from  the demos, Beast, 3xAY, and tilemap test, they all failed with the previous console output.

Great bit of software, just wondered if this is able to run on the Steamdeck desktop os?

It's Linux based isn't it?  

As long as mono and OpenAL are installed, then it should manage. I've not got one to try I'm afraid...

Hi Mike, Do you know if the new Head over Heels for the Next will work.   Did see this in a message.  The full release should work on anything with 1 meg that supports the requested core revision. 

I haven't tried, but Flash did use CSpect to help develop so I believe so. However, it won't run at the moment as it's tuned to KS2 machines, and it'll have to wait until the KS1 version is released - I believe.

Did get this message, so it would work  "The paid versions will work on everything just about. The free version will only work on ks2 machines."

Do you know if it is possible that ZX Spectrum Next Launcher can work on Cspect

No idea, they'd have to test it.

Help need in creating an image for ZX Spectrum 2.08 if anyone can point me to an img file thx

#CSpect does not currently work with the latest distro. 2.06 is the highest it'll work with.

Managed to get CSPECT working with 2.08, on discord someone kindly posted a image.

Mmmmm... wonder how they managed that. The previous ones get stuck in a reset loop....

(1 edit)

Is the latest NextBASIC available in a CSPect image?

When I use the current "card image" from https://zxspectrumnext.online/ I notice differences in the NextBASIC that is documented in 'ZX Spectrum Next User Manual' (2023).  Statement like this is not accepted:  10 x,y=1,2

What's the version of each release, what's the latest version, etc?  

The newest version of the OS that'll run is  probably 2.06, this is due to  more hardware being emulated, and the newer OS's  going into  a reset loop.

As such, some of the features in the latest manual may not be available.

(2 edits)

Thanks (Now I see the other replies here regarding the issue)

Amazing work as always, looking forward to the OS fix so i can hopefully run the latest.

How do I make CSpect run in full screen.... I've tried somethings that were suggested to me, Nothing works yet....Simple instructions please. This pensioner struggles. Thanks

-fullscreeen on the command line

(1 edit)

I've just updated to this current version from v2.19.1.0 and I can't get it to boot - I just get a blank screen. 

I unzipped the new version into a new folder, copied across the two required .rom files from my old folder along with a couple of custom .bat files.

SD card image is from the sn-emulator-22.10a.zip download on the specnext.com/latestdistro page.

What am I missing? 🤔

The newest version of the OS that'll run is  probably 2.06

Later versions seem to force a software reset via NextReg 2 - which is newly emulated, and they get stuck in a reset loop.
So either use this version, or if you have an SD card with 2.07, then you'll need to use the previous CSpect until I can get around to fixing this...

(+1)

why does it say new version available?

I  simply haven't updated the remote version number yet - I'll do that tonight.This feature will likely be removed, as itch.io usually emails everyone anyway.

Amazing work 👍🤓