Page 2 of 6

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Sun Mar 05, 2017 1:45 pm
by hackfresh
hackfresh wrote:Is there anything that would make netplay better/worse than nestopia+kaillera p2p? Or should it be roughly the same?
I never tried netplay under Nestopia. My implementation is just a simple TCP protocol. I really only intended it for intranet play; it may not be performant over a larger network.[/quote]

Gotcha. Its probably equivalent performance then.

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Sun Mar 05, 2017 4:45 pm
by hackfresh
Found the fix for my friend on MAC which was a solution for minecraft.

Had him download the 2.9.3 release of lwjgl

Copied these files from the /jar folder of the download into the nintaco/lib folder:
Jinput.jar
Lwjgl.jar
Lwjgl_util.jar



Copied these files from the /native/macosx folder of the download into the nintaco/lib/native folder:

ibjinput-osx.jnilib
liblwjgl.jnilib
openal.dylib

Then copy and renamed openal.dylib to libopenal.dylib

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Tue Mar 07, 2017 9:34 pm
by zeroone
Matsuda Seiko's Rock'n Rouge.zip
(1016 Bytes) Downloaded 503 times
Here's something fun to try. Load the following ROM into Nintaco:

Family BASIC.7z <Family BASIC (J) (V3.0) [!].nes>

Then, select Machine | Family Basic | Load Program... and select the bas file within the attached zip.

Then, type: RUN

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Fri Mar 10, 2017 12:15 pm
by zeroone
TetrisBot.zip
(12.65 KiB) Downloaded 510 times
Want to see a Tetris Bot in action? Start Tetris (UE).7z <Tetris (U) [!].nes> in Nintaco. Then, select Tools | Run Program... Click on the Find JAR... button and select the .jar in the attached zip. Then, press Load JAR. And, finally press Run.

Within Tetris, start the game as either type A or B and at any speed or height. The Bot will take control once the game begins.

To see it play faster, hit the Stop in the program controls window. In the arguments field, type in: fast. And, finally press Run again.

Be sure to hit Stop before closing the game.

I have yet to document the API. But, it provides full programmatic control of the emulator and it's designed to work from any language. From the main menu, Tools | Start Program Server... enables remote API access into the emulator. I translated the bot to Python, Lua and C# to demonstrate (other languages pending).

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Sun Mar 12, 2017 3:20 pm
by zeroone
I made some minor updates (new build in OP): I fixed some issues with Netplay and I added a high-speed button that can be used to skip past intermissions or to hasten rewinding.

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Sun Mar 12, 2017 4:22 pm
by hackfresh
What was fixed with netplay? When I tried it the old version the client bore all of the lag/frame delay which makes it useable in a LAN setting only.

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Mar 13, 2017 6:28 am
by zeroone
hackfresh wrote:What was fixed with netplay? When I tried it the old version the client bore all of the lag/frame delay which makes it useable in a LAN setting only.
That mechanism has not changed; all the clients are synchronized with the server. Is there a better way to approach netplay?

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Mar 13, 2017 7:19 am
by tepples
There are a couple methods to improve netplay experience over a link with latency in the tens of milliseconds. Both are used by things like GGPO.

Adding constant lag
Send the input received from the local keyboard/gamepad immediately, but run the emulator a couple frames behind to allow input from other players to arrive.

Backdating
If other players' input does not arrive in time, make the "dead reckoning" assumption that the input hasn't changed. When the received input differs from the dead-reckoned input, rewind to the difference and re-emulate.

If you're relying on input sync to keep the players' emulated machines in sync, you want the reliable in-order delivery of TCP. This means that if you're using UDP to reach a server behind NAT in cases where TCP traversal doesn't work, you'll probably end up reimplementing most of TCP on top of UDP. Or do you instead require users to run their own server on a machine not behind NAT, such as a VPS leased from a hosting provider?

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Mar 13, 2017 10:46 am
by hackfresh
EDIT: Removed question

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Mar 13, 2017 10:52 am
by tepples
You rewind, replay the corrected inputs, and fast-forward, so that the frame rate is constant. There will be a small amount of teleporting in the twitchiest of twitch games; if it gets too harsh, increase the constant lag. But if a game already incorporates delays into its animation, the effect of backdating will be invisible. Games with such delays include Punch-Out!! (as Dwedit described), games that run at a low frame rate (such as anything by Micronics), and platformers with a momentum mechanic.

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Mar 13, 2017 10:53 am
by hackfresh
Ya I should have spent a few minutes looking at few more article about it before asking. Thanks.

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Sun Apr 02, 2017 1:08 pm
by AnnaWu
Family BASIC

Is the Play/Record tape function working?
(*.tape)

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Apr 03, 2017 4:45 pm
by zeroone
AnnaWu wrote:Family BASIC

Is the Play/Record tape function working?
(*.tape)
It does indeed work. The *.tape files are a proprietary format.

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Mon Apr 03, 2017 5:20 pm
by kazblox
Nice job on the emulator-- It's the only one that will let me emulate the Subor Keyboard nicely without surrendering the joystick controls or having it not work at all! If only settings didn't default on Power Cycle...

Aside from all games I've tested so far, completely working, there's some issue going on with the boot up of Subor v3.0, v6.0 and v10.0 in your emulator. There's supposed to be a chime that rings three times, and with the correct "TV System" setting (Dendy), it only rings once. Mesen gets this correct.

Nintaco

Mesen

Re: Nintaco -- NES-Famicom-Dendy Emulator

Posted: Tue Apr 04, 2017 12:04 am
by AnnaWu
zeroone wrote:
AnnaWu wrote:Family BASIC

Is the Play/Record tape function working?
(*.tape)
It does indeed work. The *.tape files are a proprietary format.
Sorry, it doesn't work for me, tested with the Family BASIC V3.
Maybe my old Notebook (Windows XP SP3 32-bit) is too slow for this program (Java 8).

No problems to load/save tape files with Nestopia, VirtuaNES, nester, kindred, vdmgr and eFamilyBASIC.

Can you upload a saved/working *.tape file to check I am able to load it or not?
Thanks.