Myself086 / Project-Nested

MIT License
505 stars 17 forks source link

Just imagine a famiclone based on snes hardware with nested on it #39

Open johneymute opened 3 years ago

johneymute commented 3 years ago

Just imagine a cartride based famiclone based on snes hardware with nested on top of it ,now it order to make it attracktive for consumers i can put giant letters on the pakage saying “builtin AI deeplearning feature wich learns how you play for a better experience”, but in reality it will learn all your gameplay mechanics such as jumping,hitting blocks,grabbing coins,wich will store it first into it’s ram as a srm file and then stores it in realtime into it’s own flash rom (wich should be expandible with extra flash rom tough sd cards for more nes and future nes games) all those generated srm files ahould be linkible for each specefic nes game sothat the next time you will play that game,that it will automatically link that generated srm file from that flash rom to that soecefic game sothat it will run smoother and better,such famiclone should contain 1 MB of ram just in case sothat even the most demanding nes game will not run out of ram for nested, I would also add terms on the pakage such as “experience games in RGB & stereo sound” and terms like “builtin expandible flash rom” to make such famiclone more attractive, I also could imagine a snes cartride and/or handheld famiclone both with hundreds of nes games on it making use of nested but with already beforehand learned gameplay on it to not relentlessly slowdown at all,so if such famiclone device based on snes hardware with nested on top of it will ever come reality,that would be awesome, Final note;that there is a snes catride with tons of chineese knock off nes games on it,BUT it’s incompatible with the snes,it only works on a soecefic snes clone,so an all compatible snes cartride with nes games on it using nested would be very welcome,so who know what the future will hold😁

Myself086 commented 3 years ago

Have you imported SRM into the exe? How many "known calls" do you have on your profile?

Myself086 commented 3 years ago

If it says 0 known calls, it's because you haven't imported the SRM into the exe. Do this and you should see the number of known calls go up which will reduce the amount of RAM used.

Unfortunately, what you're asking for won't solve the "Out of Memory" issue and possibly make it worse after you see it the first time.

Myself086 commented 3 years ago

I'm curious what part of step 5 you don't understand, read it and explain it to me in your own words.

Myself086 commented 3 years ago

image

Myself086 commented 3 years ago

Once the number of "known calls" goes up, you're supposed to redo step 1-4.

Myself086 commented 3 years ago

You did something wrong, the number of known calls is supposed to go up. Just follow steps 1-5 then 1-4 again.

Myself086 commented 3 years ago

Load NES game. Make a profile. Use at least 16KB SRAM. Save SNES. Play for a bit. Load NES game. Load SRM into exe. Save SNES.

Done.

For more details, you can read all 5 steps. Do step 1 through 5. Step 5 tells you to redo step 1 through 4. So the steps go like this: 1, 2, 3, 4, 5, 1, 2, 3, 4.

What this does is recompile code into the ROM so the emulator doesn't have to do it in real time. It removes the lag spikes you get (or hick-ups as you call it) and frees RAM so it's less likely to give you an "Out of Memory" error (depending on the game). Super Mario Bros 3 is one of the most demanding games in terms of RAM due to how the code is structured.

johneymute commented 3 years ago

Hi, I tryed what you said, i first loaded the game supermario 3 into nested 1.4.1 and then i loaded the 128KB srm file from supermariobros 3 wich was created from the everdrive into it it says 1021 calls, and once i combined that by saving it and making a new nes rom of it,now it runs amezingly smooth from the start,pressto👍

Verstuurd vanaf mijn iPhone

Op 13 okt. 2021 om 01:35 heeft Myself086 @.***> het volgende geschreven:



Load NES game. Make a profile. Use at least 16KB SRAM. Save SNES. Play for a bit. Load NES game. Load SRM into exe. Save SNES.

Done.

For more details, you can read all 5 steps. Do step 1 through 5. Step 5 tells you to redo step 1 through 4. So the steps go like this: 1, 2, 3, 4, 5, 1, 2, 3, 4.

What this does is recompile code into the ROM so the emulator doesn't have to do it in real time. It removes the lag spikes you get (or hick-ups as you call it) and frees RAM so it's less likely to give you an "Out of Memory" error (depending on the game). Super Mario Bros 3 is one of the most demanding games in terms of RAM due to how the code is structured.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Myself086/Project-Nested/issues/39#issuecomment-941744650, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AVVWMQFR3JTMSXGFMZVTSITUGTA5HANCNFSM5FURHFSA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Myself086 commented 3 years ago

It's the number of sub-routine calls that are known to the exe before converting. These sub-routine can now be recompiled by the exe into the ROM (read only memory) instead of the SNES, freeing some memory.

The reason that this step can't be done on the SNES directly is because the ROM (read only memory) is exactly as the name suggests, you can only read it but not write it.

johneymute commented 3 years ago

Well i did added the srm ram with the stored calls on it and sure i no longer do get the out of memory massage with mario 3 ,even not on the powerpak BUT now a new problem does have ocurned , if i beat the first boss on world 1 i will get a brk opcode massage (on both powerpak & everdrive) wich i did not get without the loaded srm file, this is absolutely weird,mmm.

but once you told i should tryed nested v1.4.1 rather then nested 1.4,2 it solved the problem😁

Verstuurd vanaf mijn iPhone

Op 19 okt. 2021 om 10:00 heeft Myself086 @.***> het volgende geschreven:



It's the number of sub-routine calls that are known to the exe before converting. These sub-routine can now be recompiled by the exe into the ROM (read only memory) instead of the SNES, freeing some memory.

The reason that this step can't be done on the SNES directly is because the ROM (read only memory) is exactly as the name suggests, you can only read it but not write it.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Myself086/Project-Nested/issues/39#issuecomment-946460175, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AVVWMQFA6STKJ3M22F5RGJDUHUQSDANCNFSM5FURHFSA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Myself086 commented 3 years ago

This is a bug that I'll have to look into. It may be new to v1.4 so try loading the same profile on v1.3 with smb3.

johneymute commented 3 years ago

Hi i did some boring tests with mario 3, and guess what, Once i attempted to load the srm File with those stored subrotine calls into nested v1.3, it gave me an error massage, i tryed it multiple times including changing the file name but no luck, but i had already discovered that the brk code massage will appear in nested v1.4.2, HOWEVER that brk massage code does not appear in nested v1.4.1,not untill level 7 of world 5 but that happens in all conversions of it, Also if i trunscate the rom with nested 1.4.1 i will get an opcode error massage on the powerpak but not on the everdrive BUT if i don’t trunscate the rom then i will not get an error massage on the powerpak, that’s pretty strange but am happy that i can atleast play smb3 on it for the most part,

Op 19 okt. 2021 om 22:17 heeft Myself086 @.***> het volgende geschreven:



This is a bug that I'll have to look into. It may be new to v1.4 so try loading the same profile on v1.3 with smb3.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHubhttps://github.com/Myself086/Project-Nested/issues/39#issuecomment-947072582, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AVVWMQEE4H7YUNCWRZYTANDUHXG5VANCNFSM5FURHFSA. Triage notifications on the go with GitHub Mobile for iOShttps://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Androidhttps://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

Myself086 commented 3 years ago

I said use the profile on v1.3, not the srm. Please make sure you read my messages multiple times.

Myself086 commented 3 years ago

There are 2 possible errors when loading srm into the exe. 1, you are loading an invalid srm file or the size is lower than 16KB. 2, you are loading an srm file whose profile name wasn't set and it is asking you if you want to load it anyway, which you can. This happens when you have no profile loaded when you hit the "save SNES" button. However, if the profile name is saved into the ROM, the exe can detect whether the correct profile is loaded and only update the correct profile, even when the wrong profile is loaded.

symbios24 commented 2 years ago

On the other hand there is the retroport nes adaptet with noac inside( nes on a chip)that plays nes games on snes i have it with a n8 everdrive Or just take a raspberry pi to play everything