Jump to content

Emulator r40 Released


Recommended Posts

As with R39, I get this error when launching R40 on my Mac (Catalina 10.15):

dyld: Symbol not found: _GCHapticDurationInfinite

However, works fine if I clone and build myself.

Did not break X16 Edit from R39 in any way that in any way I can see quickly.

Link to comment
Share on other sites

Nice work!  I've been wondering for a while how badly I've been abusing the ability to load content quickly on the emulator, afraid that the load times would be too disruptive on actual hardware.  I still don't know what the actual time difference will be, but this update at least makes it clear that calling LOAD isn't free.  I'll have to make sure to turn my layers off as I'm loading the maps and tiles, but I suspected I'd have to do that eventually.

  • Like 1
Link to comment
Share on other sites

  • Administrators
On 4/29/2022 at 4:56 PM, Jestin said:

I've been wondering for a while how badly I've been abusing the ability to load content quickly on the emulator, afraid that the load times would be too disruptive on actual hardware.  I still don't know what the actual time difference will be, but this update at least makes it clear that calling LOAD isn't free.  I'll have to make sure to turn my layers off as I'm loading the maps and tiles, but I suspected I'd have to do that eventually.

In the emulator, loading from SD card is very close to the speed on actual hardware. Loading from the host fs is faster, but since r40 at least not instantaneous.

Link to comment
Share on other sites

  • Administrators
On 4/29/2022 at 4:38 PM, Edmond D said:

Thanks for the next rev of the emulator. I'm surprised at the size differences based on the platform (I hadn't noticed it before.) Any comments on why the wide difference?

  • x16emu for Linux uses the system's SDL (you may have to install it first)
  • x16emu for macOS links SDL statically (only the parts that are used are included)
  • x16emu for Windows ships with a version of the SDL DLL (i.e. all of SDL)
  • Thanks 1
Link to comment
Share on other sites

  • Administrators
On 4/29/2022 at 4:51 PM, Stefan said:

As with R39, I get this error when launching R40 on my Mac (Catalina 10.15):

dyld: Symbol not found: _GCHapticDurationInfinite

However, works fine if I clone and build myself.

Can you test this version of your Catalina machine? http://pagetable.com/docs/tmp/x16emu_mac_TEST_CATALINA.zip

Link to comment
Share on other sites

On 4/29/2022 at 10:38 AM, Edmond D said:

Thanks for the next rev of the emulator. I'm surprised at the size differences based on the platform (I hadn't noticed it before.) Any comments on why the wide difference?

Easy: Linux > MacOS > Windows

Ergo: the size of the package is inversely proportional to the quality of the OS

  • Haha 2
  • Confused 2
Link to comment
Share on other sites

The RTC is working but the TI$ and DA$ hooks into the RTC are still a work in progress, eh?

I obsess a little bit about timekeeping because the most significant application I ever wrote was an alarm clock for my C64. 😉 

Link to comment
Share on other sites

Congratulations with the R40 release!

Happy to see that the errors with the files and the mouse i had to report earlier have been resolved.
I will flag these as resolved and close the open ticket on github.

Have a look below, this is running on the CX16 R40 emulator (wip):

Note that there seems to be an issue with the -prg parameter of the emulator, but i need to investigate it further.

When I open up the emulator using the -prg option, i get this:

image.png.2f18449f9a573deb76a478861bec493c.png

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

It returned:

zsh: bad CPU type in executable: ./x16emu

Never seen that error, and don't really know what it means.

Bad CPU type => Build target something else than the Intel Core i5 processor I have. Yes I know it's old 🙂

Edited by Stefan
Link to comment
Share on other sites

On 4/29/2022 at 10:38 AM, Michael Steil said:

In the emulator, loading from SD card is very close to the speed on actual hardware. Loading from the host fs is faster, but since r40 at least not instantaneous.

Oh yeah, I can really see the difference.  One of these is running from the filesystem, the other from an SD card image.  Definitely going to have to pre-load some loading screens into banked ram.

sd.gif

filesystem.gif

  • Like 1
Link to comment
Share on other sites

  • Super Administrators
On 4/29/2022 at 1:15 PM, Michael Steil said:

Sorry, I built for ARM instead of Intel! 🙂

Try this one: http://pagetable.com/docs/tmp/x16emu_mac_TEST_CATALINA-2.zip

 

On 4/29/2022 at 1:47 PM, Stefan said:

That version runs on my Mac.

Great work with the Kernal, by the way!

This begs the question... does there need to be a separate binary for Intel and Arm Macs? Or can your compiler produce a universal binary? (That was definitely a thing when Apple was transitioning from PPC to Intel.) 

 

Link to comment
Share on other sites

  • Administrators
On 4/29/2022 at 7:08 PM, svenvandevelde said:

When I open up the emulator using the -prg option, i get this:

image.png.2f18449f9a573deb76a478861bec493c.png

This would happen if the file you are passing as an argument does not have a PRG header but starts with $00 $00. Otherwise, please file an issue.

  • Thanks 1
Link to comment
Share on other sites

  • Administrators
On 4/29/2022 at 11:25 PM, TomXP411 said:

This begs the question... does there need to be a separate binary for Intel and Arm Macs? Or can your compiler produce a universal binary? (That was definitely a thing when Apple was transitioning from PPC to Intel.) 

The r39 and r40 releases are indeed universal (x86_64 and armv8). It's just the one-off builds I made for @Stefan that were for a single architecture.

  • Like 2
Link to comment
Share on other sites

On 4/30/2022 at 7:32 AM, Michael Steil said:

This would happen if the file you are passing as an argument does not have a PRG header but starts with $00 $00. Otherwise, please file an issue.

Done, @Michael Steil

R40 x16emu: error when using -prg option, first file on disk read instead of given filename · Issue #398 · commanderx16/x16-emulator (github.com)
I''ve attached a video link that shows the phenomenon.

Because all my other binary files are registered as "PRG" also on the disk.
So what happens is, it tries actually to load a file that contains sprites using the command LOAD ":*",8,1.

Not sure if it is part of the options that if a quick fix is possible, that you remake the emulator binaries?

Maybe an idea is that before release, let a couple of people test it first who have developed already more "complicated" CX16 programs?
So that you can ensure that your release is stable enough before submission. (just an idea).

Sven

Edited by svenvandevelde
Link to comment
Share on other sites

There's a new behavior for the Kernel LOAD and SAVE subroutines; they now display the names of every file being loaded or saved on the screen, along with SEARCHING FOR etc as it's loading.  That might be great for a diagnostic, but not for a game or a video.  I can't have it displaying all those messages; is there any way I can turn that behavior off?  We haven't needed it so far.

Link to comment
Share on other sites

On 4/30/2022 at 9:42 AM, Ed Minchau said:

There's a new behavior for the Kernel LOAD and SAVE subroutines; they now display the names of every file being loaded or saved on the screen, along with SEARCHING FOR etc as it's loading.  That might be great for a diagnostic, but not for a game or a video.  I can't have it displaying all those messages; is there any way I can turn that behavior off?  We haven't needed it so far.

The only way I know of to get finer control is to implement your own serial read/write function.

Then LOAD would be replaced by calling these functions:

  • SETNAM
  • SETLFS
  • OPEN
  • CHKIN
  • MACPTR (faster block read) or CHRIN (slower byte read)
  • CLOSE
  • CLRCHN

It is, evidently, more code, but it's not that bad.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

Please review our Terms of Use