Skip to content

Add gopher64 support#137

Merged
buu342 merged 1 commit into
buu342:masterfrom
loganmc10:gopher64
Aug 17, 2025
Merged

Add gopher64 support#137
buu342 merged 1 commit into
buu342:masterfrom
loganmc10:gopher64

Conversation

@loganmc10

@loganmc10 loganmc10 commented Jul 23, 2025

Copy link
Copy Markdown
Contributor

Description

This is a companion to this PR in Gopher64: gopher64/gopher64#526

I have only tested this on Linux so far. The debug example ROM (Hello World and USB Read) work without issue. However, the NetLib ROMs don't seem to work correctly yet, for example:

Screenshot From 2025-07-23 19-25-42

This driver works using TCP. Gopher64 starts a TCP server, and UNFLoader communicates with that TCP server. ROM uploading and regular read/writes are supported.

Related Issue

Motivation and Context

I wanted to add Netlib support to Gopher64 so that the potential was there to play with physical consoles.

How Has This Been Tested?

Screenshots (if appropriate):

@loganmc10
loganmc10 force-pushed the gopher64 branch 2 times, most recently from 5c82ff0 to b9e17cb Compare July 23, 2025 18:06
@loganmc10
loganmc10 force-pushed the gopher64 branch 11 times, most recently from 3cb94d4 to a53a69d Compare July 25, 2025 08:26
@loganmc10
loganmc10 marked this pull request as ready for review July 25, 2025 10:07
@loganmc10

Copy link
Copy Markdown
Contributor Author

I've marked this as ready, since I sorted out the Windows build issues. It works fine with the debug echo ROM. However, I did run into some instability with the Netlib ROMs (Real-time and Tic-Tac-Toe specifically). I'm not sure at this point whether it is a bug with gopher64, or with Netlib.

@buu342

buu342 commented Jul 25, 2025

Copy link
Copy Markdown
Owner

Cool stuff! I would like to take some time during the weekend to run some tests on the servers to try and diagnose the issues you faced with the servers you highlighted. I'm pretty sure it's problems with the server code and not the ROMs/emulator.

I also noticed in the commit that I am apparently using some absolute paths in the Visual Studio projects. I'll have to fix those as well...

@buu342

buu342 commented Jul 25, 2025

Copy link
Copy Markdown
Owner

It also seems that the Windows build failed due to the device_gopher64.cpp file.

@loganmc10

Copy link
Copy Markdown
Contributor Author

Sorry, yes I think I fixed the error in the Windows build now.

If you want to try out the gopher64 integration, you can get a build with the changes here: https://github.com/gopher64/gopher64/actions/workflows/build.yml?query=branch%3Aunf

In the setting you enable UNFLoader emulation, and then restart the emulator:
image

This will cause the TCP server to run. You need to have Gopher64 running, then start UNFLoader, and it should detect Gopher64. You can do ROM uploads and/or just open a ROM normally.

@buu342

buu342 commented Jul 25, 2025

Copy link
Copy Markdown
Owner

Okay, we're getting a bunch of linker errors now, those have nothing to do with you though, on me to fix!

@buu342
buu342 force-pushed the master branch 2 times, most recently from f97f557 to 40b3088 Compare August 15, 2025 22:13
@buu342

buu342 commented Aug 15, 2025

Copy link
Copy Markdown
Owner

I've fixed the GitHub actions, so it should properly build the Windows version of the executable now.

@buu342
buu342 force-pushed the master branch 6 times, most recently from 62d57d7 to 6e6b950 Compare August 16, 2025 23:34
@buu342

buu342 commented Aug 16, 2025

Copy link
Copy Markdown
Owner

Fixed for realsies this time 🥲

@loganmc10 loganmc10 reopened this Aug 17, 2025
@loganmc10

Copy link
Copy Markdown
Contributor Author

ok, for me, it is ready, but please let me know if you want me to change anything. Or if you want to change something, please feel free.

@buu342

buu342 commented Aug 17, 2025

Copy link
Copy Markdown
Owner

It looks good, so I'll go ahead and merge it 😄

@buu342
buu342 merged commit 6c3fe06 into buu342:master Aug 17, 2025
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants