CodeWalrus

Development => Calculators => Calc Projects, Programming & Tutorials => Topic started by: gameblabla on August 19, 2015, 08:48:31 pm

Title: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on August 19, 2015, 08:48:31 pm
I always make sure to link to the latest version, don't worry.
A secondary goal to the project is to then port them to n2DLib, for speed.
I already did so for PokéMini, Oswan, Potator, PocketSNES and PicoDrive.

Emulators/Interpreters:
PicoDrive (https://codewalr.us/index.php?topic=670.msg21711#msg21711)
Megadrive/Genesis emulator by notaz, ported to nspire by me.
PocketSNES (https://codewalr.us/index.php?topic=670.msg40822#msg40822)
SNES emulator based on PocketSNES. Very fast
ScummVM (https://codewalr.us/index.php?topic=670.msg20536#msg20536)
Point&Click Interpreter
Another World (https://codewalr.us/index.php?topic=670.msg20536#msg20536)
Another World bytecode interpreter
PokéMini (https://codewalr.us/index.php?topic=670.msg21369#msg21369)
PokéMon Mini emulator. Runs fullspeed.
Gameblabla's Oswan (https://codewalr.us/index.php?topic=670.msg21555#msg21555)
Wonderswan emulator, forked from Oswan.
Potator (https://codewalr.us/index.php?topic=670.msg21555#msg21555)
Watara Supervision emulator. Fullspeed when overclocked to 224Mhz.
SMS_Plus (https://codewalr.us/index.php?topic=670.msg34789#msg34789)
Master System/Game Gear emulator. Runs almost fullspeed with no frameskip, no overclocking
Pom1 (https://codewalr.us/index.php?topic=670.msg36657#msg36657)
Apple I emulator.
Temper (https://codewalr.us/index.php?topic=670.msg40210#msg40210)
NEC PC-Engine emulator.
Cannonball (https://codewalr.us/index.php?topic=670.msg61039#msg61039)
Game engine for Outrun.

Games:
Alterego (https://codewalr.us/index.php?topic=670.msg55119#msg55119)
Puzzle game
Helicopt3rs (https://codewalr.us/index.php?topic=670.msg22102#msg22102)
A Swing Copters clone i originally did for 3DO.
Where's Derpy (https://codewalr.us/index.php?topic=670.msg22228#msg22228)
Reprogramming of a flash game originally made by pepperpunk.
Super Methane Brothers (https://codewalr.us/index.php?topic=670.msg20536#msg20536)
Game similar to Bubble Bobble.
Shisen-Seki (https://codewalr.us/index.php?topic=670.msg29697#msg29697)
Game that plays similar to Mahjong.
Opossum Massage Simulator (https://codewalr.us/index.php?topic=670.msg35175#msg35175)
Stupid game that was originally created by DJ Omnimaga, this is my own take on it
KillMinds (https://codewalr.us/index.php?topic=670.msg36122#msg36122)
Puzzle game.
Wolfenstein 3D (https://codewalr.us/index.php?topic=670.msg37255#msg37255)
Port of Wolfenstein 3D. Precessor to Doom.
Homing Fever (https://codewalr.us/index.php?topic=670.msg44672#msg44672)
Survival game, game by Artur Rojek.

Tools:
RoQPlayer (https://codewalr.us/index.php?topic=670.msg21189#msg21189)
Video Player that plays RoQ files.

=========================================================
Due to overall low activity on Omnimaga (i need feedback u no),
i have decided to post my thread here as well.
Let's start with the last 3 projects i have ported :

ScummVM
(https://gameblabla.olympe.in/img/scummvm.png)
This time, the port was handled by rwill (he did nQuake) so kudos to him.
i only fixed Dragon History's support and compiled it.
ScummVM allows you to play some point-and-click games, such as Monkey Island.
Two versions are provided, a big and small version.
The big version is more compatible but takes more memory.
You can download it here (https://gameblabla.olympe.in/files/scummvm-nspire.zip)

Another World (raw)
(https://tiplanet.org/modules/archives/captures/1440007903another.png.pagespeed.ce.Y__GhS5MxL.png)
I have ported raw, a bytecode interpreter of Another World by Piotr Padkowski.
You need the MS-DOS port for this game.
The screen protection has not been cracked, if you lost your wheel, see here (http://www.oldgames.sk/docs/codewheel/another-world/).
You can download it in the attachments below.

Super Methane Brothers
(https://tiplanet.org/modules/archives/captures/1440013279methane.png.pagespeed.ce.HYJ86euhu-.png)
Super Methane Brothers is an Amiga game by Apache Software Ltd.
It was later recreated by rombust and i ported it to the TI Nspire.
You can download it in the attachments below
Title: Re: SDL ports for TI Nspire
Post by: xlibman on August 19, 2015, 10:09:17 pm
Heya, thanks for cross-posting. More feedback is always good IMHO (I posted FF:MF CE on 4 different TI forums), although of course Summer is usually pretty quiet in the TI community. Those games looks very fun to play and I actually considered buying the second game for the Super Nintendo a few months ago once, but I finally didn't. I am curious if the frame rate is better on the Nspire than on the SNES?

I'll try to find some time to give those programs a try :)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on August 20, 2015, 01:05:43 am
I am curious if the frame rate is better on the Nspire than on the SNES?
Yeah, definitively.
It's actually on par with the MS-DOS port, look here :
https://www.youtube.com/watch?v=9Ei1mW1Q_S8 (https://www.youtube.com/watch?v=9Ei1mW1Q_S8)

(Also, look more closely at 3:10 at the easter egg i inserted, i proud of it lol. It's now fixed though)
Title: Re: SDL ports for TI Nspire
Post by: xlibman on August 20, 2015, 05:56:52 am
Woah, the speed is very good! :O The SNES version runs at about 5-6 FPS at most.

Was the sound manually edited into the video or is it playing off the dock port at the bottom of the calc? I remember some audio utility that did that.
Title: Re: SDL ports for TI Nspire
Post by: alexgt on August 20, 2015, 01:29:50 pm
Looks awesome :0 I will keep these in mind if I use my Nspire for games again ;)
Title: Re: SDL ports for TI Nspire
Post by: Unicorn on August 25, 2015, 03:57:52 am
Wow, that looks amazing! I wish the CSE could do that kind of thing.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on August 28, 2015, 06:29:56 am
Wow, that looks amazing! I wish the CSE could do that kind of thing.
Since the TI-84+CE is faster and can run C, I wonder if SDL could be ported to it and allow such games to be ported? After all, since Out of this World could run on a SNES, shouldn't the 84+CE be able to run it too? Anyway I am curious about what gameblabla have in store next in terms of TI-Nspire SDL game ports. :)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on August 30, 2015, 04:26:20 pm
I have not done much because i was trying to improve Oswan for GCW0.
I still found some time to fix a annoying bug my RoQPlayer.

RoQPlayer
RoQ is a video format similar to CinePak.
To convert a video to RoQ, you can use ffmpeg.
This new update removes the annoying cursor when a video was playing.
You can download it here :https://tiplanet.org/forum/archives_voir.php?id=296214 (https://tiplanet.org/forum/archives_voir.php?id=296214)

Quote
   
Quote

Wow, that looks amazing! I wish the CSE could do that kind of thing.
Since the TI-84+CE is faster and can run C, I wonder if SDL could be ported to it and allow such games to be ported? After all, since Out of this World could run on a SNES, shouldn't the 84+CE be able to run it too?
No, he's right, something like SDL would probably be infeasible due to overall low memory.
I have to remind you that the proc is still 8-bits...
Something like Out of this World could be done even in C if properly coded but that's about it.
Also, that C compiler you're talking about is proprietary. I'm not even willing to touch that.

Quote
Anyway I am curious about what gameblabla have in store next in terms of TI-Nspire SDL game ports.
If the issue with floats is solved then i can release a proper version of Genesis Plus GX, Meritous, NeoPop etc...
If not, well i would have to look for new software to port.
I do plan to re-release my old nspire games (Cass' Gueule, Rainbow Dash v1.5, Where's Derpy), make them faster
and release them as a part of a compilation.
There's also Ganbare Natsukisan i need to port as well.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on August 30, 2015, 04:46:19 pm
Thanks for the info. I was curious. I hope that the issues with floats can be solved in the future since that would greatly improve speed. I remember when Chockosta made his Minecraft clone with no texture and it ran at 5 FPS because he used floating points instead of fixed point. And re-release of your old games would be nice. :)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 02, 2015, 09:53:24 pm
Hello,
i'm currently porting some of my emulators from SDL to n2DLib and it results in a small but nice speedup.
I'm currently fixing Oswan but i have completed the port for PokeMini.

PokéMini
(https://tiplanet.org/modules/archives/captures/1435879310pokemini.png.pagespeed.ce.Vu44jvO8G1.png)
PokéMini is a Pokémon Mini emulator by JustBurn.
This release now uses n2DLib instead and all but the biggest screen size were removed.
(Because it already achieve fullspeed without overclocking)
It comes with a homebrew game, Psychic Seeds.

You can download it in the attachments below.
Title: Re: SDL ports for TI Nspire
Post by: alexgt on September 02, 2015, 09:59:16 pm
Looks awesome :)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 02, 2015, 11:45:40 pm
Thanks alex !
I guess i should talk about Gameblabla's Oswan too, even though it has its problem on Nspire...

Gameblabla's Oswan
EDIT: Click here for the latest version. (https://codewalr.us/index.php?topic=670.msg21555#msg21555)
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 02:00:44 am
Cool, I'll give them a try at some point. I wonder if Final Fantasy III (the remake of the NES game) will work on it. When the calculator is overclocked, how much slower than the real console is it?
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 02:06:09 am
Quote
I wonder if Final Fantasy III (the remake of the NES game) will work on it.
^That was funny
Square never released FF3 on Wonderswan due to technical problems.
On the other hand, FF1, FF2 and even FF4 were released on WS.
Square even said how they fell real hard on their asses when they tried to port FF3 to WS.

Quote
When the calculator is overclocked, how much slower than the real console is it?
When overclocked to 266mhz, about 3 times slower.
Oswan badly needs an ARM recompiler

To answer your question, yes, they work properly.
I still need to check if it crashes randomly though...
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 02:10:07 am
Aah I see. Too bad it couldn't be made faster, but nice job nonetheless. I'm glad to see that some of the obscure consoles are getting some love too.

I wonder how feasible a SNES emu would be... I know that people can simply use SNESAdvance through gp-SP Nspire, but I heard that SNES advance was extremely unreliable.
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 02:16:01 am
Aah I see. Too bad it couldn't be made faster, but nice job nonetheless. I'm glad to see that some of the obscure consoles are getting some love too.
Yeah, i hope the Prime gets ASM support soon because that's the only calc can see it run it fullspeed :/

I wonder how feasible a SNES emu would be... I know that people can simply use SNESAdvance through gp-SP Nspire, but I heard that SNES advance was extremely unreliable.
Yeah, SNESAdvance is the only solution for now and it is indeed pretty bad. (still impressive for the gba though)
The only emulator i can see being ported to Nspire is PocketSNES.
To get it to work, i need to get rid of the menu.
After that, i will have to hope it doesn't crash on nspire....

SMSPlus, NeoPop, Genesis Plus GX, that crappy Handy emulator...
I ported all of them and they either crash or they just suck. (Handy)
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 02:30:35 am
Actually, anyone can create and install a third-party HP Prime OS that adds ASM support as he sees fit, because the calculator doesn't have much protection against third-party OSes. Lionel once made a proof of concept on TI-Planet, but the OS didn't do much besides display colors. The best, in order to respect HP's wishes to keep the platform locked away from cheaters, would be to only create a patched OS (patchable via an IPS file to avoid copyright problems) that gives you the option to either launch ASM/C programs or the official OS from a bootloader. If the exam mode is enabled, the bootloader would simply skip directly to the official OS or lock down ASM/C programs from execution and the OS license would have an anti-cheating policy that forbids anyone from releasing modified versions that allows people to use ASM/C programs when the exam mode is enabled and would require any fork to keep that license restriction intact. But yeah, basically it's possible. It's just that most HP Prime owners only care about maths and education, so very few people are interested in making game-related material for it.

For now with the HP PPL language, something such as a barebones TI-83+ BASIC simulator would be possible (to make porting games easier), or perhaps even some emulator, but it would obviously run very slow. HP PPL is best for games ported or coded from scratch and third-party languages.


And thanks for letting me know about PocketSNES. Hopefully it can be ported without too much hassle. It would most likely be quite popular (although not as much as if it was for the 84+CE)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 06:06:50 pm
Yo, Good news everyone !
I have ported PocketSNES to Ti Nspire and it runs pretty well on it !
I basically had to remove the spu & apu and disable the menu and i got it to work.
All the games compatible with Snes9x 1.43 will work on it as well.
I tried Megaman 7 and even the Megaman X3 with its own special chip and they work great.
Super Mario World should work faster than those games.

NOW YOU CAN FAP TO MEGAMAN ON THE GO

Already excited ?
Download it here (https://github.com/gameblabla/pocketsnes-nspire/raw/master/PocketSNES-nspire.zip)
Github repo (https://github.com/gameblabla/pocketsnes-nspire)
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 07:06:20 pm
Shaq-Fu on the TI-Nspire *.*

But more seriously, Mario Kart will rule on that calc. Are there frame-skipping options to improve speed like in TI-Boy CSE?
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 07:16:20 pm
Shaq-Fu on the TI-Nspire *.*

But more seriously, Mario Kart will rule on that calc. Are there frame-skipping options to improve speed like in TI-Boy CSE?
PocketSNES has auto-frameskipping so it will skip frames when needed.
The more power you have, the less frame it will skip.
Title: Re: SDL ports for TI Nspire
Post by: Streetwalrus on September 03, 2015, 10:22:07 pm
That's way cool. People have been waiting for an SNES emulator for ages. :P
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 10:23:18 pm
That is good gameblabla. Darn now I can't wait to play Hong Kong 97... er Mario Kart.

EDIT: By the way I cannot run PocketSNES on my TI-Nspire. I am using Ndless 3.1 revision r914 on OS 3.1 and when I run the emulator, the calc simply reboots.
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 11:00:00 pm
Quote
EDIT: By the way I cannot run PocketSNES on my TI-Nspire. I am using Ndless 3.1 revision r914 on OS 3.1 and when I run the emulator, the calc simply reboots.
I have the same configuration.
I guess you don't have enough memory, could you try again ?
Maybe you have to much files on your calc, which is eating memory up...

Voginator got it to work so i'm pretty sure it's that.
You need the TI Nspire CX with 64 Mb of RAM, any other ti nspires won't work.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 11:03:57 pm
Do you mean RAM or Flash? I got 67.3 MB out of 115.2 MB.

Could the hardware revision (B) have something to do with it?

Or did I do something wrong when updating to Ndless 3.1 r914? (I replaced the ndless_resources.tns then reseted the calc)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 11:06:21 pm
Do you mean RAM or Flash? I got 67.3 MB out of 115.2 MB.
I mean RAM but due to TI, the more you use flash memory, the more it will eat RAM.
I guess you should try to reinstall ndless again.
You really just can't start the emu ?
What game are you trying to play ?

EDIT: You can check RAM usage with TILP.
If you have TILP, connect your calc to your PC.
Right below "Memory:",
it should show the memory available on your calc.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 11:11:42 pm
Ah I see. I tried a different Ndless config/resource copy and still no luck

I can't even play any game because the emulator simply won't start at all. It just shuts off the calc then reboots. I'll reformat my calc then reinstall OS 3.1 once I finished recharging it. Could it be hardware issues? Because I had troubles running some other Ndless programs in the past.

Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 11:14:17 pm
Ah I see. I tried a different Ndless config/resource copy and still no luck

I can't even play any game because the emulator simply won't start at all. It just shuts off the calc then reboots. I'll reformat my calc then reinstall OS 3.1 once I finished recharging it. Could it be hardware issues? Because I had troubles running some other Ndless programs in the past.
It shouldn't do that, because the file browser (which starts up) was reported to work on real hardware
by almost everyone else. ( RoQPlayer, Dgen etc...)
It sounds like NAND corruption. (or worse, a hardware issue, RAM is broken)
If you can't run some other ndless, you should backup and format your calc several times.
I don't know what it could be.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 11:15:22 pm
Yeah I definitively think it's a NAND corruption or hardware issue. Possibly caused by past mistakes with past Ndless installs (maybe I accidentally set the AHB too low in Nover once?)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 03, 2015, 11:18:09 pm
Yeah I definitively think it's a NAND corruption or hardware issue. Possibly caused by past mistakes with past Ndless installs (maybe I accidentally set the AHB too low in Nover once?)
Yeah i think so, PocketSNES, depending on the game, requires much memory
so the fact it's such a memory hog could trigger the rebbot.
(running Megaman X3 on Ti Nspire for example requires around 24MB of free RAM)

Sorry to hear this, dj
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 03, 2015, 11:35:21 pm
Well it looks like my calc is busted now.

Or rather, it still works, but now that I reformated it with option 4 in maintenance menu then reinstalled OS 3.1, I can no longer use Ndless because Ndless simply won't install.

In other words, my TI-Nspire OS 3.1 is basically a TI-Nspire running OS 4.0, but still with 3.1 functionalities.

Could you make a video of Mario Kart in action for me?


EDIT: So I decided to upgrade to OS 3.6, and I could install Ndless 3.6 on it once. Then when I ran PocketSNES, Mario Kart told me it failed to load the ROM. So I downloaded more ROMs, but then when I tried running any ROM, it would instantly exit back to the TI-OS documents menu.

In order to fix this, I have to reinstall Ndless.

Could I just be doing something wrong, like invalid file names? This is the error message I get on both Super Mario Kart (USA).sfc.tns and Mystic Quest Legend.smc.tns by the way:

Loading ROM
/.snes96_snapshots/.srm.tns
Failed.

Press Button to continue.
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 04, 2015, 12:17:54 am
Yes, you should rename your roms so they have no spaces.
For example, rename mario kart to smk.sfc.tns.
I'll add this to the readme if this works for you.

By the way, this is how it looks like on my Ti Nspire :
https://www.youtube.com/watch?v=w2EGVom3LCo (https://www.youtube.com/watch?v=w2EGVom3LCo)
Title: Re: SDL ports for TI Nspire
Post by: Streetwalrus on September 04, 2015, 11:03:26 am
Wow, that's amazing. It runs at a pretty OK speed too. O.O
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 04, 2015, 12:23:27 pm
Hi all,
i have fixed a serious bug with PocketSNES that prevented it to work on some calcs, like in DJ and critor's one.
It was trying to save in a nonexistant directory.
Critor had the same issue as dj and he told me the new version works now.
Anyways, you should download it again if PocketSNES did not worked for you.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 04, 2015, 03:12:35 pm
Horray, it works! I assume it didn't create the directory if non-existent, right? Also is the error dependent on specific calculator hardwares? On the TI-84+, for example, Omnicalc's restore RAM function will not work on any 84+ hardware manufactured past April 2007.

Anyway, I am running Final Fantasy: Mystic Quest as I write this :). Thanks a lot and great job :)
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 04, 2015, 03:45:49 pm
Also is the error dependent on specific calculator hardwares? On the TI-84+, for example, Omnicalc's restore RAM function will not work on any 84+ hardware manufactured past April 2007.
In fact, the version of PocketSNES with the bug should have not worked on my ti nspire...
Trying to save in the root directory can do funny things, or nothing depending on the hardware.

Anyway, I am running Final Fantasy: Mystic Quest as I write this :). Thanks a lot and great job :)
Thanks, can't wait to fix my atari 2600 emulator.
Title: Re: SDL ports for TI Nspire
Post by: xlibman on September 04, 2015, 03:55:27 pm
Oh it saved in the root directory? I guess it's better to save in the documents folder, plus it makes it easier for people to delete savestates and config (if they want to reset games/emulator setups, that is). Also, if TI ever updates the Nspire there are risks of file conflicts, if, for example, they decide to name a root directory file exactly like a ROM savestate file and that Ndless comes out for that OS afterwards.
Title: Re: SDL ports for TI Nspire
Post by: gameblabla on September 04, 2015, 04:11:47 pm
Oh it saved in the root directory? I guess it's better to save in the documents folder, plus it makes it easier for people to delete savestates and config (if they want to reset games/emulator setups, that is).
Obviously, this was a bad behaviour. i just forgot to fix this.
Currently it works like Oswan, it creates a directory with the dot and puts everything in it, like on Linux.
You can check your saves in /documents/ndless/.pocketsnes
I think it's neet as a system, i should to this more.
Might a write a tutorial/document about it for Nspire programmers.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 04, 2015, 10:29:15 pm
Does the dot hide the folder? I never used Linux before.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on September 04, 2015, 10:37:24 pm
Does the dot hide the folder? I never used Linux before.

On linux it does, dunno about the Nspire file browser.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 04, 2015, 10:39:44 pm
Does the dot hide the folder? I never used Linux before.
No, it doesn't hide the folder thankfully.
I just put the dot to make it clear it's a folder with all the saves in there.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on September 05, 2015, 04:03:18 am
I was playing some of this today, and it'd nice! Also, it did open and run the smc file just fine. I made a few issues on the github repo, it'd be nice if you checked them out.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 05, 2015, 04:04:57 am
Ah ok thanks for the info guys. Also Ivoah yeah I only tried smc files myself since that's what I mostly used for SNES emulation. I wasn't even sure that there was a possibility that only sfc files run.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 05, 2015, 09:02:09 pm
I was playing some of this today, and it's nice! Also, it did open and run the smc file just fine. I made a few issues on the github repo, it'd be nice if you checked them out.
Oh yes, i forgot i do not filter files on Nspire.
I closed one issue and answered the other one.
It needs a better control sheme i agree with that, i'm surprise no one complained about that.
I guess you're just happy playing your SNES games on your calc.

Believe or not but i can still improve speed for PocketSNES.
Switching to n2DLib, even partially, should bring a nice speed bump.

As for my other emulators, Stella still crashes.
I will look into that later, custer's Revenge can wait i think.
I tried to switch to native with Potator but all i got is a Black screen,
strange.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 05, 2015, 09:13:06 pm
I noticed that the controls were a bit akward, but we can't do much about it on the TI-Nspire and HP Prime. They made our job a bit hard by putting the d-pad in the middle. The best would be to group the A, B, X and Y buttons as close as possible to each others, but then comes the issue about L and R. I can't really think of a decent control scheme with that many buttons. If I ever make my own racing or platform game on the HP Prime, I'll simply use 2 buttons and maybe the touchscreen.

That said, MK controls on the SNES weren't that great either. It's a bit akward to use items while driving at the same time.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 06, 2015, 02:45:12 am
You won't believe me when i'll tell you the reasons why all of my emulators were so slow :
Simply linking an executable to libSDL makes everything twice as slow !
Now, Potator and PocketSNES runs fullspeed overclocked and Oswan runs much faster !
And i thought the TI Nspire was slow...

PocketSNES
(https://tiplanet.org/modules/archives/captures/1441307005x3.png.pagespeed.ce.4OVapKEAmL.png)
PocketSNES is a SNES emulator.
The first version was using SDL but i switched it to n2DLib and the speedup is HUGE.
I can now play games fullspeed when my calc is overclocked to 266mhz !

You can download it here. (https://github.com/gameblabla/pocketsnes-nspire/raw/master/PocketSNES-nspire.zip)

Potator
(https://tiplanet.org/modules/archives/captures/1441508413potator.png)
Potator was the first Watara Supervision emulator available.
It can emulate all the games available on it, including Bon Treasure games and the like.
You can download it here (https://tiplanet.org/forum/archives_voir.php?id=239616).

Gameblabla's Oswan
(https://tiplanet.org/modules/archives/captures/1441081754goswan_kinni.png.pagespeed.ce.NQ81ulcTaZ.png)
Remember when i told DJ that for Oswan to run faster, it would need an ARM recompiler ?
I was wrong... Not linking it to libSDL (even though it did not use it) improved the speed and now,
speed emulation is twice as fast !
(But an ARM recompiler would still be nice)

You can download it here (https://github.com/gameblabla/oswan/raw/master/release/oswan.tns).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 06, 2015, 05:18:22 am
Wow great to hear! O.O I was sure that the Nspire capabilities were what caused slowdowns. Gonna try the new version soon :D. Do you think the Genesis emu will be able to see the same fixes?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 06, 2015, 01:11:37 pm
The Nspire is quite capable, it's just a matter of optimizing. And yes indeed, SDL is much slower than n2dlib because it adds a lot of overhead.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 06, 2015, 02:26:42 pm
Potator had a bug that prevented input from being registered so i updated it.
Fixed "Keep Aspect" too.

Wow great to hear! O.O I was sure that the Nspire capabilities were what caused slowdowns. Gonna try the new version soon :D. Do you think the Genesis emu will be able to see the same fixes?
Thanks.
Yes, it's much powerful now thanks to n2DLib.
As for Dgen (the Genesis emulator), it needs a lot of clean up.
It doesn't have a nice abstraction system like PocketSNES so it might take a while.

Quote
The Nspire is quite capable, it's just a matter of optimizing. And yes indeed, SDL is much slower than n2dlib because it adds a lot of overhead.
Yes, that is true but i did not know is that only using one function from SDL (e.g SDL_GetError) makes twice as slow.
I guess this has to do with the slow RAM or cache ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 06, 2015, 02:38:21 pm
The memory bus in the CX is slow as hell (it's twice as fast on the Classic iirc). That aside, yes cache matters. I suppose the instruction cache on the Nspire is pretty small and SDL probably adds a big enough amount of overhead to render the cache useless.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 06, 2015, 03:35:21 pm
I bet the slow RAM is the issue. I was wondering why it seemed like HP PPL seemed faster than Ndless languages at first, then I got told that the memory bus was the bottleneck. Kinda like on the 83+ and 84+ where the slow LCD driver was a bottleneck preventing perfect flicklerless grayscale like on the 86.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 06, 2015, 03:42:03 pm
Don't forget that despite the same CPU core, the HP prime runs at several time the frequency of the Nspire (and frequency is a lot more relevant here since it's the exact same CPU), so in terms of raw CPU, the Prime wins. They also dedicated time to optimizing the PPL runtime which TI obviously did not do for Lua. That said, I wouldn't be surprised if the memory is faster in the Prime since TI is known for optimizing production cost over features and quality (see the 84+ RAM downgrade). Oh, and if HP is smart, PPL uses the 2D chip for all the screen stuff.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 06, 2015, 03:55:07 pm
That too, but it was still surprising at first considering HP PPL is a proprietary language. I mean, even though HP is commited to optimizing the language, I am surprised they managed to do it this much. Also the HP Prime is rumored to have hardware acceleration for 2D as you mention, which helps.

Working with 32 MB of RAM (where only about 16 is available to the user and where lots of memory leaks occur) can be annoying, though.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 06, 2015, 04:37:22 pm
It's not rumored to have HW acceleration, it has it. Whether the OS uses it is another question, but there are great advantages to using it in both speed and battery life, so it would be stupid if they didn't. Also the Nspire classic has way less free RAM.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 06, 2015, 04:41:55 pm
Wait it was confirmed? O.O I wasn't 100% sure since it seemed like there was no official statement about it. I wouldn't be surprised if 2D draw commands used it, considering how fast they can get.

And yeah the classic Nspires have less free RAM, but at least the OS isn't riddled with as many memory leaks as the HP Prime is. With some large RAM-intensive programs you need to soft-reset your HP Prime after almost every execution of that program in order for it to work.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 06, 2015, 04:51:29 pm
The chip used in the Prime is a well documented Samsung SoC, with full docs available from Samsung themselves. The datasheet is clear, it has a 2D chip. I need to check if it actually supports triangles for 3D.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 06, 2015, 05:02:33 pm
Ah ok I wasn't sure about where the chip came from. And it would be nice if triangles were supported. I know that HP PPL has two triangle commands (with opacity settings) but I don't know if it takes advantage of acceleration or not.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 06, 2015, 05:03:51 pm
2D acceleration chip or not, if there's no way to use it, then we can't go really far...

Anyways, i have posted another video about the new version of PocketSNES.
This time, i'm showing you Megaman X3 on my overclocked TI Nspire CX. (overclocked at 266Mhz, underclocked runs cool too)
https://www.youtube.com/watch?v=v6aFU05YMd4 (https://www.youtube.com/watch?v=v6aFU05YMd4)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 06, 2015, 07:59:30 pm
I wish my calc could reach 266 MHz. The max I can reach without freezing Nover is 234 MHz (sometimes 246 but it's rare). But the speed improvements are definitively noticeable.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 07, 2015, 05:12:28 am
I released a minor update to PocketSNES.
I reduced its size from 420kb to 235kb, i mapped diagnonals to 7,9,1,3 along with some minor changes.
Download link is the same. (https://github.com/gameblabla/pocketsnes-nspire/raw/master/PocketSNES-nspire.zip)

I'm considering a port of PocketSNES for Casio Prizm but 2MB of RAM just won't cut it...
Sure, it can be overclocked pretty high but 2MB of RAM is not going to be enough, except maybe for Super Mario World...
Other than the Casio Prizm, i can't think of another calculator that could handle PocketSNES...

I found three games (Far East of Eden Zero, Street Fighter Alpha 2 and Star Ocean) that do not work on PocketSNES.
It's because they use the SDD1 chip, a chip that can decompress on-the-fly.

I think i should stop talking about PocketSNES for now and improve my other emulators/games.
I mean, i have Cave Story to do, as well as Dgen and get that Stella emulator to work...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 07, 2015, 05:21:24 am
Can we now use the numpad to move around? While I find that control scheme weird on calcs, I think it's better on the TI-Nspire because of the way the touchpad works. For example, when I played Mario Kart this morning I noticed that if I press left or right but that my finger is 1 millimeter too low or too high, then it won't even register the keypress so I end up running straight into walls.

As for the PRIZM, the calc max speed is around 110 MHz IIRC and I heard that some people bricked their calcs just from overclocking, so they're best left at their 58 MHz speed. And you might be better off writing a brand new SNES emulator from scratch if you were gonna do it.

The HP Prime would handle it, but PocketSNES would basically be an OS until someone bothers making an ASM/C launcher that can also launch the OS (and only the OS if in exam mode).

I think you did a great job on PocketSNES so far. Too bad it didn't happen sooner in the Nspire CX life. Hopefully it becomes as popular as the other emulators.

Good luck on your other projects! :)


And yeah I assumed that Star Ocean would not work lol. Does Mario RPG work, though? It doesn't even launch on some SNES clone consoles like the RetroDuo.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 07, 2015, 05:42:59 am
Can we now use the numpad to move around? While I find that control scheme weird on calcs, I think it's better on the TI-Nspire because of the way the touchpad works. For example, when I played Mario Kart this morning I noticed that if I press left or right but that my finger is 1 millimeter too low or too high, then it won't even register the keypress so I end up running straight into walls.
Yeah, you can move around the numpad now, just like that GB emulator.
I wish i could implement better dpad support though, kind of like nSDL actually.

Quote
As for the PRIZM, the calc max speed is around 110 MHz IIRC and I heard that some people bricked their calcs just from overclocking, so they're best left at their 58 MHz speed. And you might be better off writing a brand new SNES emulator from scratch if you were gonna do it.
Well, i thought i could do at least a Proof-of-Concept. I already started working on input.
Too bad there are no emulators for Prizm, i could have learned from them and i could have done the port quickly.

Quote
The HP Prime would handle it, but PocketSNES would basically be an OS until someone bothers making an ASM/C launcher that can also launch the OS (and only the OS if in exam mode).
PocketSNES being an OS may not be a bad idea, if there's a C compiler with some basic libraries available,
that is. I'm sure Lionel could do something like that.

Quote
I think you did a great job on PocketSNES so far. Too bad it didn't happen sooner in the Nspire CX life. Hopefully it becomes as popular as the other emulators.
Good luck on your other projects! :)
Thanks,
i partly worked on it because i'll soon take the plane to go to France and i did not want to get bored.  :p

Quote
And yeah I assumed that Star Ocean would not work lol. Does Mario RPG work, though? It doesn't even launch on some SNES clone consoles like the RetroDuo.
I have not tried Mario RPG but it should work.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 07, 2015, 06:02:32 am
Yeah some Ndless programs have perfect d-pad controls. I am unsure what is the secret, though. On the other hand, sometimes they're too sensitive (eg the Ndless mViewer selection menu)

There is a PRIZM emulator and you can use the trial version from edu.casio.com website but it's not very accurate, from what I remember.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 08, 2015, 03:25:22 am
So i stopped working on PocketSNES for a while and tried to port PicoDrive (a Sega Megadrive/CD emulator) instead to Nspire.
After some confusion about the config files, i got it to work.

It doesn't crash like Genesis Plus GX and it runs much faster than Dgen, it runs most games at 17FPS, no frameskip.
I have yet to switch from SDL to n2DLib and remove sound emulation so it should run even faster than that.
PicoDrive should actually run faster than PocketSNES, interesting.

It's based on version 1.35 so Virtual Racing is not emulated.
That's fine because that game runs at 15FPS on my PSP anyways.

One more thing, autoframeskipping actually breaks the emulator on Ti Nspire...
My guess is that this has to do with the slow RAM on CX, because it sometimes struggle to load
the ROMS and setting the frameskip to AUTO slows down the emulator to a crawl.

Hopefully, switching to n2DLib shouldn't take much longer.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 08, 2015, 04:27:55 am
Glad to see you found a different emulator that runs faster :D. Good luck getting it to work completely :)

On a side note you are free to link to your ticalc files in the file downloads archives on CW (or even upload directly, but that is not recommended since it resets the download count) at https://codewalr.us/index.php?board=17.0 . We'll edit the topic title with the tags accordingly. I would link to this topic there but I prefer that the downloads archives have 1 program or game per topic. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 08, 2015, 07:53:44 pm
You thought PocketSNES was good ?
Well...
YOU DIDN'T SEE PICODRIVE RUNNING YET !
It runs fullspeed with a frameskip of 2 on a non-overclocked TI Nspire CX.
I actually don't advise to overclock your calc because the speed benefits are small
and not enough for even 266Mhz to run most games with a frameskip of 1.
Its compatible with most Genesis games.

You can download it here (https://github.com/gameblabla/picodrive-nspire/raw/master/platform/nspire/picodrive-nspire.zip)

By the way, Malloc on Ti Nspire CX suffers from memory leak.
I need to fix PocketSNES's memory leak and avoid to use malloc...

Anyways, enjoy sanik on your calc fullspeed.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: matrefeytontias on September 08, 2015, 08:59:57 pm
I made an issue about malloc a long time ago, I didn't know it wasn't fixed yet. I assume you already have the latest Ndless SDK from GitHub.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 08, 2015, 09:02:19 pm
I made an issue about malloc a long time ago, I didn't know it wasn't fixed yet. I assume you already have the latest Ndless SDK from GitHub.
Didn't know it was a known issue. I'm lazy, could you please link me to that issue ?
And yes, i have the latest Ndless SDK and i have manually upgraded to GCC 5.2.

EDIT: You did not reported about Malloc matrefeytontias, only about realloc.
Might be a good idea to make an issue about it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: matrefeytontias on September 08, 2015, 09:07:30 pm
Oh actually the issue I posted was about realloc. I remember talking about malloc being borked though, but I can't say where or if it has been written somewhere. You're better off just creating a new issue on the repo.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 08, 2015, 09:39:02 pm
Oh actually the issue I posted was about realloc. I remember talking about malloc being borked though, but I can't say where or if it has been written somewhere. You're better off just creating a new issue on the repo.
Reported the issue.
Hopefully it gets fixed because lots of emulators/games are relying on it...
(I know one user that actually suffered from a memory leak.)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 09, 2015, 12:39:42 am
Glad to see PicoDrive running at such fast speed. :D There will definitively be a front page article just about the two emulators soon :)


EDIT: Problemo: No ROM loads on my calc. All of them gives me a "Failed to load ROM" error D:
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 09, 2015, 05:15:25 am
EDIT: Problemo: No ROM loads on my calc. All of them gives me a "Failed to load ROM" error D:
DAMMNNIIIIIT, i hope it's not another issue ala PocketSNES...
I have no idea, your roms may actually not work. Have you tried them ?
Maybe your roms are old and are coming from an oldset ? (GoodRoms instead of No-Intro ?)

Also, try with the latest version here. (https://github.com/gameblabla/picodrive-nspire/raw/master/platform/nspire/picodrive-nspire.zip)

EDIT: Would it be possible to pm me one of your roms so i can test them on my calc ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 09, 2015, 05:26:03 am
Actually, now that I checked, the files I used have .md extensions, which Gens+ REWiND won't even open. Could it be that PicoDrive only supports North American (Sega Genesis) ROMs or at least only North American file extensions? It would be weird, considering the emulator name... (plus on the Gens + REWiND emu just renaming the extension makes the games work, while on PicoDrive it won't fix the issue)

I'm betting that it's the same problem as PocketSNES. By the way, the first two I tried were Ys III and Sonic. I also tried a 2048 homebrew.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 09, 2015, 05:30:40 am
If it's an issue similar to PocketSNES then i don't even know where it could be...
Maybe you suffered a memory leak from PocketSNES, try to reset your calc ? (the small button behind)
I had weird issues with PicoDrive, especially when memory leaked. (it can do crazy things like yours and showing a black screen with nothing you can do)
Tell me if the reset worked for you

EDIT: Your roms are bad and don't work because they are coming from an old set. (GoodRoms instead of No-Intro)
I have the same games and they all work on my emulator.
You should re-dump/download them.
Didn't try that 2048 homebrew though...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 09, 2015, 05:46:19 am
I have zero clue about what GoodRoms and No-Intro means. I guess I'll have to try a different ROM site since every other ROM I tried from the site I use didn't work either. I got the carts but no equipment to dump them.

EDIT: Tried Street of Rage from a different site. Still the same problem. I think every ROM site just mirrors each other's files and they're all bad dumps. The only way to play PicoDrive is to dump ROMs myself it seems, right?

EDIT: Even 2048 won't run. I think your emulator port is definitively broken in the same way as PocketSNES was. Or it's my NAND that is corrupted and I will never be able to play PicoDrive.  Here is the 2048 game btw http://gendev.spritesmind.net/forum/viewtopic.php?t=1730
https://www.youtube.com/watch?v=UuQ1SLSrNhg

I wonder if Pier Solar will...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 09, 2015, 06:08:49 am
I have invesgated a bit and turns that :
- Old dumps will probably don't work
- In the very first build of Picodrive-nspire, it was trying to open in the root directory.

For the second reason, you should try the latest version. (https://github.com/gameblabla/picodrive-nspire/raw/master/platform/nspire/picodrive-nspire.zip)
The No-Intro dumps generally have the .md extension and they should work out-of-the-box.

Other than that, i can't say.
SpiroH got it to work on his emulator but then again Vogt got the broken build of PocketSNES to work too on Firebird emu...
Don't know

EDIT: Took a further look and i think i found the issue.
Will test the new version and then i will push it to my github.
I will let you know when this happens.

EDIT2: I FIXED IT !
I will push my changes.

EDIT3: Done, please redownload it again !
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 09, 2015, 06:19:05 am
Do you plan to add support for old dumps to the emulator? That might be best since 99.9% of the sites out there provides old dumps. Not that I encourage people to download ROMs, but since most people will do it anyway, if this emulator becomes popular then your ticalc.org ratings and reviews will all say it doesn't work or it's fake.

Also I didn't know SpiroH was still around. Shortly after the Omnimaga<>CodeWalrus split happened, he seemed to have vanished entirely... O.O


Anyway now my calc no longer boots. I tried a reset but it remains stuck on the clock icon, frozen. >.< Once I fix it (if I can) I'll try the new version


EDIT: @gameblabla , sorry but the new update doesn't work for me. It still says Failed to load ROM and I tried every single ROM I could find, including homebrews. So either the problem is still there or my calc is busted. I tried deleting the config folder afterward, to no avail.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 09, 2015, 01:38:08 pm
Ok, so i didn't removed all the checks, something i did Today.
DJ, could you please try again ? (https://github.com/gameblabla/picodrive-nspire/raw/master/platform/nspire/picodrive-nspire.zip)

I'm so sorry this happened.
But when something works on your calc and emulators and you expect the same thing for other calculators
when this is not the case, you can't do really anything...

EDIT: Pushed another update and it not longer randomly crash with yours roms, DJ.
It seems more stable, now. Thankfully
Re-download it again DJ and try again.
It was really another issue ala PocketSNES (except not directory related)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 09, 2015, 03:14:10 pm
No problem. It's the difference between each Nspires and OSes that really makes it a nightmare for developers. I'll try the new version tonight if I am not falling alseep beforehand. :3=
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 09, 2015, 09:00:43 pm
So like i said, the new version is more stable and it does not do funny crashes on old dumps.
I did a video of Picodrive running on my Ti Nspire CX :
https://www.youtube.com/watch?v=IrADSVXxJq4 (https://www.youtube.com/watch?v=IrADSVXxJq4)

As you can see, it runs pretty cool.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 10, 2015, 12:39:20 am
Ok, so i didn't removed all the checks, something i did Today.
DJ, could you please try again ? (https://github.com/gameblabla/picodrive-nspire/raw/master/platform/nspire/picodrive-nspire.zip)

I'm so sorry this happened.
But when something works on your calc and emulators and you expect the same thing for other calculators
when this is not the case, you can't do really anything...

EDIT: Pushed another update and it not longer randomly crash with yours roms, DJ.
It seems more stable, now. Thankfully
Re-download it again DJ and try again.
It was really another issue ala PocketSNES (except not directory related)

Sorry, I still get "Failed to load ROM" on every single ROM file I try. Are you sure you pushed the changes, though? Because it still says PicoDrive SDL v1.35 on the screen, like the last two builds I tried. In the zip file, it says the file is more recent but it behaves identically.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 10, 2015, 12:55:25 am
Sorry, I still get "Failed to load ROM" on every single ROM file I try. Are you sure you pushed the changes, though? Because it still says PicoDrive SDL v1.35 on the screen, like the last two builds I tried. In the zip file, it says the file is more recent but it behaves identically.
lol, i removed every ROM check, it should not say that.
You must be accidently using an old version.
I attached it with a different name so you don't get confused.

And yes, i forgot to change the PicoDrive 1.35 SDL thingy name, i need to change it.
(it no longer use SDL)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 10, 2015, 12:59:47 am
Nah, I downloaded the file from your latest link.

To make sure my calc did not remain stuck with an old version, I deleted the on-calc copy, refreshed the file list, then sent the new one to it. Unless the TI-Nspire OS acts like Facebook and never actually delete stuff, I can't see how I am accidentally using an old version. I even saved the zip file with a different name.


EDIT: It looks like the Github version is definitively an old one you accidentally re-uploaded, or it remained frozen in time due to maybe Github server/cache issues? Because the new version you just attached behaves differently now.

Now instead of failing to open any ROM, my calc reboots everytime I try to launch any ROM.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 13, 2015, 02:07:01 am
So yeah, DJ's TI Nspire has really weird issues with his TI Nspire .
If you want to use PicoDrive,
i still suggest using No-Intro dumps or your own clean dumps , using a device like Retrode.
Like i said, old dumps can provoke weird crashes. (perhaps due to bad cheksums ?)

Anyways, so after Picodrive, i decided to work on Hugo, a NEC-PC Engine game.
So yay, it works on my calc.
Too bad, i won't be able to include CD emulation though because the cd code is unfortunely non-portable
and linux-specific.... yeah

So the games work great but the colors are wrong and the speed is not that great. (still somewhat playable though)
I doubt i will be able to switch to n2DLib for that emulator though, hugo is a huge mess.

EDIT: Side note but i forgot to mention that PocketSNES has now proper support for Ndless 3.6/3.9 Exam Mode compatible,
which i also did.
Critor told me that it can't be used for cheating anyways so they accepted it but cw decided not to allow it so...
Oh well.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 14, 2015, 01:00:33 am
Oh if Ndless for exams can't be used to cheat then we can always accept it, although we would need to investigate. I was sure that it was entirely dedicated for cheating.

Also nice to see a NEC PC Engine emu for the Nspire. When I have a chance, I'll give it a try. Also yeah I doubt implementing support for CD games would be of any use. A CD-ROM/R/RW is 700 MB large, while the Nspire only has around 128 MB of disk space.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Adriweb on September 14, 2015, 02:19:34 am
Actually, from what we've discussed on TI-Planet chat, a version of Ndless that's not hardcoded for specific path (like, either the non-PTT or the PTT one) is better, not only against potential cheating (something related to the absolute path of the startup folder, for instance...), but also for being able to properly run ndless apps that could be used to unbrick devices, for instance (in fact, critor did exactly that with a device in PTT and there was no other way!).
I believe Gameblabla is working on PR with a patch replacing the several instances of the hardcoded string by a function call that gives the proper path depending on the mode.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 14, 2015, 02:50:07 am
Aah I see. I think such tool would be a must. It could probably be uploaded in CW archives too, if the original authors are fine with it. But ideally, any version of Ndless uploaded on CW should have a download link that points to the original files, so that you don't have to update multiple sites everytime Ndless is updated.

The only thing that would be against the CW rules is a file which its main purpose is to cheat, such as PTTKiller or an Ndless fork that kills exam mode, as well as tutorials on how to cheat or bypass exam mode after it has been set.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 16, 2015, 12:50:03 am
After seeing critor's news about one of my old game Helicopt3rs and remembering how bad the TI Nspire port was,
i decided to improve it a bit.

(https://gameblabla.olympe.in/img/helicopt.png)

Helicopt3rs was a Swing Copters clone i originally did for 3DO.
TAB to turn and ESC to quit the game. (and save your highscore)

Here are the results :
Everything is contained in one single file, it's much smaller, it's works with Ndless Exam Mode-compatible
and mostly importantly, it runs faster too.

You can download it in the attachments below.

About Ndless Exam Mode:
I do not intend to publish it here until it's ready.
The reason why is because it still relies on hardcoded paths and when in PTT-mode,
it does not start applications in the startup folder. (Could be done with a workaround i guess)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 16, 2015, 01:24:29 am
I didn't know you made that game. I know that LD Studios made Swing Copters. Your port looks nice too. I'll definitively have to try it when I have a chance. Also I understand about Ndless Exam mode.


Also I didn't know you made games for the 3DO. I think there are only 20 official games available for it but I didn't know that console had any homebrew programmers. EDIT Actually it's the Virtual Boy that only had 20 games. The 3DO seems to have many more, except that I heard that only one or two exclusives were good.

EDIT (Sept 16) I have now created a topic for 3DO, at https://codewalr.us/index.php?topic=712.0 , so if you wonder where your posts went, then they're now there. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 17, 2015, 07:25:00 am
@gameblabla, congrats, your SNES and Sega Genesis emulators are now on CW headlines. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 17, 2015, 10:22:15 pm
I have improved and re-released Where's Derpy for Ti Nspire CX,
a port of a flash game by pepperpunk.
For this new re-release, i have switched to n2DLib and made some minor improvements.
The game is much smaller too and runs faster.

(https://tiplanet.org/modules/archives/captures/1442527562wd.png.pagespeed.ce.GIpcud_Fb6.png)
You can download it here. (https://gameblabla.olympe.in/files/wheresderpy_nspire.zip)

Quote
@gameblabla, congrats, your SNES and Sega Genesis emulators are now on CW headlines. :)
Yay, i'm on headlines. thx
Now, what happens next ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 17, 2015, 10:23:50 pm
I remember playing this game, but I don't remember if it was on my calc or Flash. Glad to see an update that improves the speed and size. :)

Now, what happens next ?
Wii U emulator for the TI-Nspire? Some people once implied that its technical specs are inferior to the Gamecube :trollface:
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 17, 2015, 10:31:32 pm
Now, what happens next ?
Wii U emulator for the TI-Nspire? Some people once implied that its technical specs are inferior to the Gamecube :trollface:
Lol, i wished they kept its old name (Project Café) because honestly, that's what it's only good for.

Speaking about the 3DO, i found one emulator that was using SDL like one year ago.
Yeah i know, a CD is bigger than the Nspire's NAND but some games are much smaller than that.
Obviously, it will not run fullspeed or even close.
I will into it and see what i can come up with.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 17, 2015, 10:33:00 pm
To be fair, the Wii U is just an upgrade over the GC/Wii architecture. It's the exact same hardware with a new GPU, more RAM and 3 CPU cores than at higher clocks.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 18, 2015, 03:08:16 am
Yeah I was kidding, but while it's an upgrade in graphics over the Wii/GC, they still don't stand up against PS4/XBone graphics. I only got the Wii U because of exclusives like MK8 and other Mario games.

Now, what happens next ?
Wii U emulator for the TI-Nspire? Some people once implied that its technical specs are inferior to the Gamecube :trollface:
Lol, i wished they kept its old name (Project Café) because honestly, that's what it's only good for.

Speaking about the 3DO, i found one emulator that was using SDL like one year ago.
Yeah i know, a CD is bigger than the Nspire's NAND but some games are much smaller than that.
Obviously, it will not run fullspeed or even close.
I will into it and see what i can come up with.

CD size was my main concern. Aren't every CD-based game fixed at 700 MB or can the ISO or whatever they use in emulators be smaller?  On TI-z80 calc, all flash apps are multiple of 16 KB and even if you made Hello World as an app it would still take 16384 bytes of Flash. However, when saved on the computer, the app only takes the space it uses, but twice as much (for example a single page app that uses 234 bytes of the page would be 468 bytes on the computer).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 18, 2015, 07:06:52 am
Nintendo believes that staying a generation behind will get them more profit. They actually make more profit on the hardware while selling it at a lower price than the ps4 and Xbox.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 18, 2015, 04:56:42 pm
Well I heard before that when Sony sold the PS3, they were barely making any money from each console and mostly made it from games and the like. As for staying 1 generation behind, it depends of what you have to offer. The Wii U launch lineup was terrible, except NSMBU and NSLU, which didn't bring enough new stuff to make the console attractive to NSMBWii/DS/2 players. Then it took over 2 years before we finally get big sellers like MK8 and SSB4. I heard that Splatoon and Windwaker HD sold pretty well too, though.


Anyway, back on topic, something that would be cool is a TI-84+, TI-84+CSE and TI-84+CE emulator for the TI-Nspire. The latter might be pushing things a little far, but in 2011 @jacobly made a TI-84+ emulator for the TI-Nspire CX, which was very promising until he lost the source. Calc84maniac had made one for the clickpad models back in 2010, but also lost the source.

I wonder if any SDL Z80 emulator exists?


Also, Sega Game Gear and Master System. Oh and Atari 2600. :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 18, 2015, 07:57:25 pm
I wonder if any SDL Z80 emulator exists?
z80e, the official KnightOS emulator, uses SDL. I think matref started porting it, the emulator itself is incomplete though and for performance it'd be better if it was ported to n2dlib of course.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 18, 2015, 08:46:26 pm
Ah I see. But it would be nice to see an emulator that can run the official TI-OSes as well. Clickpad and Touchpad models used to have one built-in by default, but sadly, TI got rid of it in color models.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 18, 2015, 08:51:15 pm
That aside the emulator isn't very accurate (eg it lacks all the undocumented but widely used z80 instructions).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 18, 2015, 08:59:35 pm
It still was pretty handy, though. I kinda prefered having to have a broken emulator than nothing. I coded Illusiat 13 on my TI-Nspire almost the entire time. :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 18, 2015, 10:45:56 pm
I have a SMS/GG emulator but guess what ?
It crashes.
I have an Atari 2600 emulator too but guess what ?
It crashes too...
I had (and still have) weird bugs with GCC, especially with optimisations turned on but even without them,
it still crashes for no reason other than bad code being generated by GCC.

Could Clang be used instead of GCC for Nspire dev ?
I heard Clang compiles better code for ARM and that was partly why Apple switched to it.
Anyways, this is the reason why we don't have thousands of emulators for Nspire.

As for z80e, i may give this a look but it looks like it is using cmake... Gee.
I guess i will have to make my own Makefile then.

One more thing : The cause for the slowdowns in Dgen was indeed gettimeday.
It runs much faster but it still is pretty slow (10FPS?) and most importantly,
input does not work on Nspire, even though it does on PC...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 18, 2015, 11:11:18 pm
Apple has been using clang for much longer than the iphone existed.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 18, 2015, 11:18:35 pm
Sorry to hear about the GCC issues. I wonder if Clang support could be added easily to Ndless? That said, perhaps another Nspire C coder could help you as well, such as @Lionel Debroux , @critor , @ExtendeD or someone else (I forgot who is in charge of Ndless anymore)


The other solution would be to write your own emulators from scratch, like calc84maniac did with gbc4nspire, but that's obviously more work and requires a considerably higher amount of experience. (Also I think gbc4nspire was written in ASM, not in C)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Lionel Debroux on September 19, 2015, 07:00:53 am
The primary reason why Apple switched to the LLVM stack is licensing (avoidance of anything GPLv3). Clang's C/C++ support and LLVM's code generation abilities have become quite good, but definitely weren't when Apple switched to the LLVM stack.
I quite doubt using Clang as an alternative to GCC for Nspire code generation would either help much, or hinder much.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 19, 2015, 05:46:10 pm
So i have fixed Hugo, a NEC PC-ENGINE emulator and it now works properly on Ti Nspire CX.
I suggest you overclock your calc for this one.
(I might look at the frameskipping options later)

You can download it here. (https://github.com/gameblabla/hugo-nspire/raw/master/hugo.tns)
Github repo (https://github.com/gameblabla/hugo-nspire)

Also, it could crash like PicoDrive or the early versions of PocketSNES
so there's no guarantee it will not work on your nspire.

EDIT: Just to warn you that i'll be unavailable from 20th September and this could take days or even weeks.
I'll move to france so i may or may not die in the plane.
In both cases, i have released some of the source code of my broken emulators :

https://github.com/gameblabla/stella-nspire (https://github.com/gameblabla/stella-nspire)
https://github.com/gameblabla/prosystem-nspire (https://github.com/gameblabla/prosystem-nspire)
https://github.com/gameblabla/dgen-nspire (https://github.com/gameblabla/dgen-nspire)
https://github.com/gameblabla/sms-nspire (https://github.com/gameblabla/sms-nspire)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 19, 2015, 06:11:48 pm
I'll move to france so i may or may not die in the plane.
You're more likely to die once you're there than in the plane. :trollface: (fun fact: this is actually accurate)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 19, 2015, 06:27:48 pm
I'll move to france so i may or may not die in the plane.
You're more likely to die once you're there than in the plane. :trollface: (fun fact: this is actually accurate)
I know... But when bad things happen on the plane,
95% of the time, everyone dies.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 19, 2015, 07:07:09 pm
Ooh a PC Engine emu, I'll try it soon. Off-topic question: Is the PC Engine called PC Engine in Europe too? I though it was only in Japan. In United States and Canada, the NEC PC Engine was renamed to Turbografx-16.


Also question gameblabla if you don't mind: Where did you live right now? I always wondered since I thought you were always in France, not in another country. ANyway good luck with your move and I hope you can get Internet access and free time again afterward.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 19, 2015, 07:14:50 pm
I'll move to france so i may or may not die in the plane.
You're more likely to die once you're there than in the plane. :trollface: (fun fact: this is actually accurate)
I know... But when bad things happen on the plane,
95% of the time, everyone dies.
Still the probability that something happens on the plane is lower than that of being attacked by a shark at the beach. :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 19, 2015, 07:19:07 pm
What if you get attacked by a shark while inside the plane? O.O

https://www.youtube.com/watch?v=I16_8l0yS-g
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 19, 2015, 07:28:10 pm
O.O I didn't think of that possibility.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Snektron on September 19, 2015, 09:41:02 pm
But what if a walrii attacks your plane? O.O
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 20, 2015, 01:26:13 am
Ooh a PC Engine emu, I'll try it soon. Off-topic question: Is the PC Engine called PC Engine in Europe too? I though it was only in Japan. In United States and Canada, the NEC PC Engine was renamed to Turbografx-16.
It should work on your calc because critor was able to run it on his own Nspire.
I'm warning you though, because it is not that fast.
Europe never had an official release but import copies there were called PC-Engine,
like in Japan.

Also question gameblabla if you don't mind: Where did you live right now? I always wondered since I thought you were always in France, not in another country. ANyway good luck with your move and I hope you can get Internet access and free time again afterward.
Guadeloupe, French Caribeens, i live there.
I hope too i can get Internet access soon after i landed.

I'm trying to make a small game before i'm leaving this place , 2 hours left damnit !
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 20, 2015, 04:50:55 am
Before i leave, i would like to show you this...
It is a little game i made in about 4 hours.

(https://tiplanet.org/modules/archives/captures/1442724529tx666.png)
Gameblabla took the plane but he is still not safe !!!
Avoid the flying sharks and discover the truth behind this !
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 20, 2015, 04:54:26 am
Ooh cool, I ll be sure to try it soon. Glad to see you are making brand new games too :)


Guadeloupe, French Caribeens, i live there.
I hope too i can get Internet access soon after i landed.

I'm trying to make a small game before i'm leaving this place , 2 hours left damnit !
I see. I heard that is a beautiful place and there are a lot of people over here who do trips there (although most instead go to Cuba and Florida)

But what if a walrii attacks your plane? O.O
Do you mean if we type http://quantuminfinity.space/WalriiHack/ script while watching the video? :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 20, 2015, 05:11:40 am
I did a quick fix, one of the sharks could not hit your plane.
dj, pls download it again. (same attachment as before)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 20, 2015, 05:35:13 am
Also, you should probably name your game Megashark vs Giant Octopus: The Game :P

And I see. I'll download it again now. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 20, 2015, 11:06:27 am
Turns out i have some free time before taking the plane so i did a small update.
I have improved the performance and improved the controls.

Also, you should probably name your game Megashark vs Giant Octopus: The Game :P
Nah, i like my name, maybe you will understand why.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 21, 2015, 12:49:35 am
Nah but it has 666 in the title so I guess it's good :P (or evil  >:D )

Also I hope that your flight won't get canceled or whatever reason
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 23, 2015, 08:59:55 pm
Hi all,
i'm back and i'm (thankfully) not dead and made it in one piece.
I only did a small update to Oswan (and soon Potator) that makes the menu a little better to control.
I'll have a look at Hugo and strip pretty much everything related to sound, this should provide a
little speedup.
As a long-term project, i'll try to get stripped-down version of Mednafen working with SDL and all
because it has a fast PCE core and it can emulate CD games from iso files unlike Hugo.

I'll improve TX666 as well, if i have any ideas to make it better.
Perhaps i should add more enemies...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 24, 2015, 04:04:26 am
Glad to hear. Also I am curious about which ISO would fit on the Nspire CX... a lot of those games got elaborate soundtracks (eg Ys Book I & II)


As for TX666 you could add some flying walruses running into the plane after you progressed far enough? :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 25, 2015, 09:32:03 pm
I'm curious, anyone saw TX666's ending ?
I might lower the difficulty but i'm not sure if i should do that because when i wrote the ending,
i was on crack man  O.O

I'm trying to compile Mednafen with my own Makefile but of course, it doesn't work...
It complains (at linking time) that some classes are undefined etc... even i though i linked to stdc++...
Am i missing something ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 25, 2015, 09:36:58 pm
I didn't have time to try the game unfortunately. I didn't even have the chance to give the PCE emu a try >.<

I'll see if I can try it later tonight or this weekend.

As for your question, you should make a separate topic called Ndless development or Nspire C++ questions, so people see it more. Some members only visits help topics.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on September 25, 2015, 09:46:38 pm
i was on crack man  O.O
Lol.

i linked to stdc++...
Using c++ now ? :trollface:
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 27, 2015, 09:20:09 am
Using c++ now ? :trollface:
Of course, you HAD to do this. lol
Mednafen is a C++ mess, what the hell is wrong with those namespaces ?

Anyways, i solved my issue but i think i'm stuck : Mednafen requires Threads.
I can't recompile nSDL to add thread support either because with the recent ndless versions,
it is currently crashing.
(the one provided by ndless works oddly enough...)

And i can't use pthread because you know... it is not available.
(and i can't make pthread work with Mednafen anyways)

Vogtinator said he planned on working on this but for now, i'm stuck.

Gotta try another emulator i guess.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 28, 2015, 03:44:44 am
Sorry to hear about that stuff D:, I hope this doesn't  compromise your future projects.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 04, 2015, 06:08:02 am
Sorry to hear about that stuff D:, I hope this doesn't  compromise your future projects.
Unfortunely, it will.
I'm still active but i'm mainly working on gcw0 for now, not nspire.
If there's any new progress regarding thread support or even progress in GCC so it no longer generate bad code,
i'll be back with new projects don't worry.

Because my hands are empty and i got nothing to give you for now,
here's an easy version for TX666. (downloads right below)
Enjoy the ending, hahahaha !
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 04, 2015, 06:25:01 am
Ooh I see. Will you post about gcw in the future?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 05, 2015, 11:01:07 am
Hello guys,
i'm back porting games again.

RetroGuru has recently announced that Fruit'Y, their latest game, is available for Dreamcast as a physical copy.
I have ported the game to TI Nspire, it will be made available shortly in a few days by retroguru themselves.
(Digital downloads are not yet released to the public)

(http://www.retroguru.com/fruity/fruity_screenshot1.jpg)
(http://www.retroguru.com/fruity/fruity_screenshot2.jpg)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 05, 2015, 05:29:26 pm
Wait... a calculator can run a Dreamcast game? O.OO How is the game speed?

Glad to see a new port from you by the way. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 05, 2015, 06:57:22 pm
Wait... a calculator can run a Dreamcast game? O.OO How is the game speed?

Glad to see a new port from you by the way. :)
Yeah, sorta. hahaha !
It's not hugely impressive by Dreamcast standards though and it's not even using the GPU for graphics. (it's all framebuffered)
The game runs fine on my non-overclocked Ti Nspire but it could be made faster if i switch to n2DLib,
which won't happen because the team wants to keep the game as portable as possible. (they don't really have a good abstraction)

Otherwise, it's a pretty good game and might become a must on nspire.
It's definitively a refreshing change from the Sqrxz series.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 06, 2015, 01:49:33 am
I'll definitively have to try it, assuming it works on my semi-broken Nspire. >.< Otherwise I could check how to get it on my DC since I got the game console.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: semiprocoder on October 06, 2015, 02:20:40 am
When will the ndless 4.0 come out already I've been waiting over a month(yeah I know its been in development for like half a year now), but I needs it nowsees, to play all these epic nspire games, and not just lua games(some of which are acutally good I have to say).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 06, 2015, 05:21:24 am
Ndless 4.0 will be ready when it will be ready. It takes time for the dev team to find exploits in order to get it to bypass the many anti-ASM/C protections that TI adds to each OS. Once such exploit is found, the team then needs to make Ndless stable. IIRC, most development is done behind the scene so that it doesn't fall under TI's hands.


And when Ndless 4.0 comes out, it will most likely be followed by a new OS that blocks it again. Hence why Ndless releases for a specific OS are always several months behind. This is the same thing in the console or iOS jailbreaking community.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 06, 2015, 05:25:38 am
I'll definitively have to try it, assuming it works on my semi-broken Nspire. >.< Otherwise I could check how to get it on my DC since I got the game console.
It should work if my ports of sqrxz games work on it.
If you want to get it on your dreamcast on a physical copy though hen it's actually pretty cheap,
probably the cheapest homebrew release on a physical format for Dreamcast.
It's 2.5€ without shipping. See here : https://www.dragonbox.de/en/343-fruity-dreamcast-homebrew.html (https://www.dragonbox.de/en/343-fruity-dreamcast-homebrew.html)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 06, 2015, 05:27:41 am
Wow, that website takes a long while to load. >.<

I am surprised that an homebrew is this cheap, considering I paid $60 for my copy of Pier Solar for the Sega Mega Drive O.O
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 06, 2015, 05:30:46 am
Wow, that website takes a long while to load. >.<

I am surprised that an homebrew is this cheap, considering I paid $60 for my copy of Pier Solar for the Sega Mega Drive O.O
It's so cheap because they said they didn't want to make any profits on it.
Also, it uses a standard DVD box but it's still better than burning it yourself since the CDs are pressed.
I think however they pretty much went commercial with this game, they even held off releasing the downloadable builds
so they could sell their Dreamcast copies.

Yeah Pier Solar... I wish i could play it on my Dreamcast and/or Megadrive but i dont' have any money for either versions.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 06, 2015, 05:44:48 am
I see. It's kinda hard to do anything without profit nowadays because you have to do something for a living, and when you do the latter, you run out of time to create any non-profit stuff.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 07, 2015, 09:19:45 pm
Retroguru are saying on their website they will release the ports after RetroBarcelona...
This means that you will only be able to play it on October 16th...
That's more than one week in my opinion !

Anyways, got nothing to do other than impossible ports so...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 08, 2015, 06:10:14 am
Sorry to hear. If only they allowed you to release it on other sites (like ticalc.org) that would have solved the issue. But oh well I guess I can wait (and if they ever go out of business then keep a copy ready for release somewhere else I guess, assuming that it can be legally re-released as a calculator program)

Regardless, thanks for all your work and those ports :). While most are not brand new games (new games are rare on the Nspire), they still brought a massive wave of new TI-Nspire content in the last few years and that's what counts. I'm also glad that you are part of the community as member :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on October 08, 2015, 09:56:01 am
To my advice, releasing the TI-Nspire port would just help promoting their game.
Because their game is then going to be featured on calculator web sites, on which it wouldn't have been mentionned anyway if it wasn't of the port. Maybe a tiny percentage of the readers are then going to buy the original game (if they own the targetted hardwares), seeing how hard/impossible it is to install Ndless on recently bought TI-Nspire CX.

In the current situation, I won't news about the game while it isn't available for download for the TI-Nspire, and as a side effect, I'm not advertising the game for now.

So a very bad decision from the game developpers, not only for the players but also for themselves, at least in the context of the TI-Nspire port.
(the situation may be different for other ports)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 08, 2015, 05:27:15 pm
Yeah I agree that if they allowed people to release ports elsewhere (as long as they link to the original and give full credits of course) they would get more attention. Besides, they are apparently not in for the profit anyway (unless production costs decreases if they make more copies, but they won't get the extra Google ranking if no one can release ports elsewhere anyway).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 13, 2015, 07:26:02 pm
Yeah, i don't agree with them too but it's their game and i can't do much about it.
They say they are indies not looking for money but the reality is that they behave as if they were an AAA company.

Anyways, i have ported a new game called Worship Vector.
It is a 3D Wireframe Tower Defense game by quasist, i played for hours on GCW0 before i had to stop.
See ? It's that good.

(http://www.gcw-zero.com/files/upload/img/wv.png)

Here are the controls
Touchpad : Move
TAB/Menu : Switch between categories. (Scan, Buy, Sell, Map menu)
Ctrl : Place Tower, Confirm
+/- : Select tower to put

As for the port itself :
It runs as good as my Another World port on Ti Nspire,
which means it is close to fullspeed.

Anyways, hope you enjoy it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 13, 2015, 08:04:19 pm
Wow that looks cool :O . I need to try it. Also it will definitively make it to news at one point.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on October 15, 2015, 01:12:42 pm
Looks nice. I'll have to try it on my Nspire when I have time.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on October 15, 2015, 03:12:53 pm
Eyup looks awesome. I need to try your games at one point, but I never really mess with my Nspire.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 15, 2015, 09:23:21 pm
By the way @gameblabla , good move of you to have ported Pocket SNES to the Nspire already. Pocket SNES official website has disappeared D: http://www.pocketnes.org/
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on October 15, 2015, 09:27:05 pm
By the way @gameblabla , good move of you to have ported Pocket SNES to the Nspire already. Pocket SNES official website has disappeared D: http://www.pocketnes.org/

That's PocketNES, not PocketSNES :P
PocketSNES is alive and well: http://www.pocketsnes.net/
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 15, 2015, 09:30:48 pm
Oh wait, I misread. My bad >.<, I was sure that PocketSNES was terminated and stuff. Still sad, though, since some other platforms could probably have benefited from a port.  Thankfully, the Nspire already has a NES emu, though.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on October 15, 2015, 09:33:52 pm
Oh wait, I misread. My bad >.<, I was sure that PocketSNES was terminated and stuff. Still sad, though, since some other platforms could probably have benefited from a port.  Thankfully, the Nspire already has a NES emu, though.

The Wayback Machine always exists though :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 15, 2015, 09:44:37 pm
True, but did it also archive the downloads? Sometimes it doesn't (eg on Kevtiva Interactive it didn't archive Flash Gordon for the TI-83+ so I had an hard time finding it)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on October 15, 2015, 09:45:07 pm
True, but did it also archive the downloads? Sometimes it doesn't (eg on Kevtiva Interactive it didn't archive Flash Gordon for the TI-83+ so I had an hard time finding it)

Yes it did.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 17, 2015, 01:37:29 am
That's good, then. While archive.org is great, it doesn't always grab everything, which is a shame since some stuff still gets lost forever.

The robots.txt exclusion glitch is also very annoying. Instead of using the archived robots.txt, archive.org uses the robots.txt that is used currently on the domain name, meaning that if your robots.txt allowed archive.org to crawl the site back in 2005, then if the domain name squatter decides in 2013 to disallow archive.org bots, then all the past cached pages on archive.org are hidden from public.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 22, 2015, 11:20:56 pm
Guys, good news !
Retroguru (finally) released their digital downloads to the public !
You can download the TI Nspire CX port right here :
http://www.retroguru.com/fruity/fruity-v.latest-tinspirecx.zip (http://www.retroguru.com/fruity/fruity-v.latest-tinspirecx.zip)

(http://www.retroguru.com/fruity/fruity_screenshot3.jpg)

A note :
PocketSNES is based on Snes9x 1.43, it is unrelated to PocketSNES on GBA which has a completely different codebase and is closed-source.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 23, 2015, 05:33:57 am
Yay! I will give this a try when I have some time. It definitively looks very good. By the way I am curious if the Dreamcast supports multiple resolutions or are their graphics just scaled up on that hardware? Because I was surprised that it used 320x240 for this game.


Also I didn't know about PocketSNES. Thanks for clarifying. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on October 23, 2015, 06:05:10 am
By the way I am curious if the Dreamcast supports multiple resolutions or are their graphics just scaled up on that hardware? Because I was surprised that it used 320x240 for this game.
The Dreamcast supports several resolutions, yeah.
Most uses 640x480 but a programmer can decide to choose any other resolution within the hardware restrictions. (Pier Solar comes to my mind)
You can even go beyond that with the VGA adapter.

In general though, doing scaling on old hardware like the Dreamcast is useless (unless required) and a waste of resources.
Only quick homebrew ports are maybe using scaling. (and performence always suffer as a result)
The same thing for the TI Nspire too.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on October 23, 2015, 06:07:25 am
I thought that the dreamcast version of Pier Solar was higher resolution with the updated graphics?

And I see. On the HP Prime and 84+CSE, downscaling actually improves performance because it takes less time to draw stuff and on the HP Prime displaying the final result scaled up doesn't cause any significant slowdown.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on October 23, 2015, 06:31:25 am
Yay.
And yeah a lot of consoles support multiple resolutions. The SNES, N64, GameCube and Wii can all do either 240p or 480i, and GC/Wii can do 480p. Newer consoles are even better at that but they don't really have any problems with scaling. Some games actually switch the resolution while running. For example Ocarina of Time runs at 240p in-game but the menus are in 480i.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on November 05, 2015, 03:57:39 pm
Think you could port mGBA (https://mgba.io/) to the Nspire? It's supposed to be pretty fast and easy to port. There's already an SDL frontend, but I'm sure you would get better speeds by using something else.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on November 05, 2015, 03:59:03 pm
That would be a great idea, mGBA runs great even on the gamecube where GBA emulation was thought to be impossible. It doesn't have JIT though I think which might be a limiting factor on the Nspire (pretty sure gpsp does but don't quote me on this).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Hayleia on November 05, 2015, 06:12:10 pm
What would be the benefits of mGBA over gpSP (which is already available for CX) ? More compatibility ? Less RAM usage to run on monochrome too ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on November 05, 2015, 06:15:23 pm
mGBA is a fairly recent emulator, it's designed mainly for embedded systems with low resources and it's extremely fast even without a dynamic recompiler, without sacrificing emulation accuracy. Even if it turns out slower than gpSP, it would still be interesting to port it, 1) just for the hell of it and 2) it might actually be better than gpSP in the end, can't know till you try. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on November 05, 2015, 06:18:04 pm
What would be the benefits of mGBA over gpSP (which is already available for CX) ? More compatibility ? Less RAM usage to run on monochrome too ?

Pretty much what Streetwalrus said, it's newer and designed to be fast+portable.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on November 05, 2015, 07:18:13 pm
I took a look at the dependencies, it seems more than feasible to port it. All of the external deps are actually there for extra features that we don't need or can't implement on the nspire due to platform restrictions (debugger, video and audio capture, screenshots, compressed roms). The latter two features are actually possible on the nspire though so we can look into it. These require zlib (included with ndless), libpng (compiles directly) and libzip (never tried but should be trivial).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on November 05, 2015, 07:59:46 pm
I assume it would be nice to have that emulator ported if it can run more games than gpSP too, but I don't know which one has the highest compatibility.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on November 05, 2015, 08:05:14 pm
I assume it would be nice to have that emulator ported if it can run more games than gpSP too, but I don't know which one has the highest compatibility.

What games don't run on gpSP?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on November 05, 2015, 08:20:54 pm
Not sure, but gpsp should run most games. Of course there are exceptions, performance-oriented emulators can't possibly have perfect accuracy.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Hayleia on November 05, 2015, 08:44:05 pm
Mario Tennis Power Tour doesn't run on it. At least not on the version used on the Nspire and I remember checking "official" compatibility lists and seeing it in "does not run".
Of course, probably other games don't run but that one was the only one I care about :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on November 05, 2015, 09:13:45 pm
I assume it would be nice to have that emulator ported if it can run more games than gpSP too, but I don't know which one has the highest compatibility.

What games don't run on gpSP?
I don't know, but I am sure some don't, because SNES emus sometimes had issues running Star Ocean even after 15 years, same with N64 emus with Mystical Ninja. And the GBA is much more recent. :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on November 06, 2015, 06:40:04 am
I took a look at the dependencies, it seems more than feasible to port it. All of the external deps are actually there for extra features that we don't need or can't implement on the nspire due to platform restrictions (debugger, video and audio capture, screenshots, compressed roms). The latter two features are actually possible on the nspire though so we can look into it. These require zlib (included with ndless), libpng (compiles directly) and libzip (never tried but should be trivial).
mGBA can't be ported yet because it requires threads, (in other words, pthread) which Ndless does not support.
In addition, mGBA is using cmake so we'll have to write our own makefile.

gPSP is difficult to port because it has no C core in its latest version...
Temper, a NEC PC-Engine emulator, was recently open-sourced and even has a armv5 dynarec but it has again no C core
and currently, it is crashing on Ti Nspire CX : it's very hard to debug it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on November 06, 2015, 06:42:07 am
Actually you don't need to port gPSP because it has already been done by calc84maniac :P http://www.ticalc.org/archives/files/fileinfo/449/44971.html (unless you mean something else than the GBA emu?)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on November 06, 2015, 10:05:27 am
mGBA can't be ported yet because it requires threads, (in other words, pthread) which Ndless does not support.
In addition, mGBA is using cmake so we'll have to write our own makefile.
Ah yeah, threads. :/ Cmake is a non-issue though, writing a Makefile is trivial and I don't see why we couldn't just use Cmake to build Nspire programs. Bare-metal developers use it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on November 06, 2015, 02:22:22 pm
I took a look at the dependencies, it seems more than feasible to port it. All of the external deps are actually there for extra features that we don't need or can't implement on the nspire due to platform restrictions (debugger, video and audio capture, screenshots, compressed roms). The latter two features are actually possible on the nspire though so we can look into it. These require zlib (included with ndless), libpng (compiles directly) and libzip (never tried but should be trivial).
mGBA can't be ported yet because it requires threads, (in other words, pthread) which Ndless does not support.
In addition, mGBA is using cmake so we'll have to write our own makefile.

gPSP is difficult to port because it has no C core in its latest version...
Temper, a NEC PC-Engine emulator, was recently open-sourced and even has a armv5 dynarec but it has again no C core
and currently, it is crashing on Ti Nspire CX : it's very hard to debug it.

You say "yet", does this mean that it might be possible in the future?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Streetwalrus on November 06, 2015, 04:18:55 pm
Yes, once they add threading support to Ndless. Another option is to use the experimental threading implementation that tangrs wrote (https://github.com/tangrs/nspire-multithreading-poc). Or try it out on linux if it can run in the framebuffer console, though you'd lose the benefits of low level hardware access.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on November 07, 2015, 04:44:49 am
What if they ever decide to never add threading support to Ndless? O.O
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on November 07, 2015, 04:46:31 am
Yes, once they add threading support to Ndless. Another option is to use the experimental threading implementation that tangrs wrote (https://github.com/tangrs/nspire-multithreading-poc). Or try it out on linux if it can run in the framebuffer console, though you'd lose the benefits of low level hardware access.

Yeah, that's what I'm going to try. I'm positive it won't run nearly as fast as gpSP though, linux on the Nspire is so slow.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on December 05, 2015, 01:48:15 am
So @gameblabla I was playing your TX666 game a few seconds ago and for some reasons, even though enemies appear rarely, it was still quite hard. I was wondering if you planned to maybe add more levels in the future, such as enemies appearing randomly, other levels where they jump faster, and others where they appear more often, for example? (That's assuming of course that you didn't quit the Nspire scene)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on January 10, 2016, 05:28:47 pm
Yo, so i'm back with another port for TI Nspire.
Arthur Rojek has recently released another game called "Shisen-Seki" for GCW0.
It's similar to mahjong, you have to match stones with the same face.

(https://tiplanet.org/modules/archives/captures/1452446151shisen01.png.pagespeed.ce.uEl9GiBwV0.png)

The port itself is pretty smooth, i have not encountered any major issues.
You can download it right below.

So @gameblabla I was playing your TX666 game a few seconds ago and for some reasons, even though enemies appear rarely, it was still quite hard. I was wondering if you planned to maybe add more levels in the future, such as enemies appearing randomly, other levels where they jump faster, and others where they appear more often, for example? (That's assuming of course that you didn't quit the Nspire scene)
So i like i told you a month ago, i do not intend to improve it and i would rather work on another game, which is what i'm currently doing.
Unfortunely, i don't know if i will be able to meet the deadline but i'll see what i'll come up with.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on January 10, 2016, 05:30:07 pm
Welcome back :3= . Also nice job. I always liked Shangai/Mahjong
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 20, 2016, 10:58:14 pm
i am bach (sorry pi for stoling your line)

(https://tiplanet.org/modules/archives/captures/1458938919pw2_scr.png)
Yup, this was the Master System emulator i was talking about earlier.
Some progress was done to Ndless, GCC and Newlib and now, i'm happy to say that things got more stable on Nspire.

It can emulate most Master System/Game Gear roms properly. (except some koreans games with special mappers)

Anyway, if you want to give it a shot, it's right in the attachments below.

I have also updated Gameblabla's Oswan.
So far, this build crashes much less so it's all good.

EDIT: I forgot to mention that it runs almost fullspeed without frameskip with no overclocking.
So it is entirely playable.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on March 20, 2016, 11:00:35 pm
Welcome back. :D A SMS emulator is definitively a great addition to the Nspire. I'll probably give it a try later (hoping my calc issues won't prevent it from working). By the way, do you plan to update all your old ports for TI-Nspire CX CR4 if they don't work anymore?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 20, 2016, 11:04:40 pm
Welcome back. :D A SMS emulator is definitively a great addition to the Nspire. I'll probably give it a try later (hoping my calc issues won't prevent it from working). By the way, do you plan to update all your old ports for TI-Nspire CX CR4 if they don't work anymore?
I can easily update the nSDL ports with no issues whatsoever.
It is however not so easy for n2DLib... as they write diretly to the screen.
I only have to wait for matrey to support the new lcd_blit api though...

This might take some time as i have a lot of games to update... including RetroGuru games.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 25, 2016, 10:19:31 pm
I have updated SMS_Plus (https://codewalr.us/index.php?topic=670.msg34789#msg34789)

Screen is now centered and i have fixed an issue with Game Gear games.
For GG games, make sure they have the ".gg.tns" extension or else the emulator will run them as Master System games.

Now, my own take on Opossum Massage Simulator should be available for Nspire very soon....
Stay tuned
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on March 25, 2016, 10:54:08 pm
Welcome back. :D A SMS emulator is definitively a great addition to the Nspire. I'll probably give it a try later (hoping my calc issues won't prevent it from working). By the way, do you plan to update all your old ports for TI-Nspire CX CR4 if they don't work anymore?
I can easily update the nSDL ports with no issues whatsoever.
It is however not so easy for n2DLib... as they write diretly to the screen.
I only have to wait for matrey to support the new lcd_blit api though...

This might take some time as i have a lot of games to update... including RetroGuru games.
ALso there is the problem that Matref is done with calculator programming. He stopped almost a year ago and switched to PC programming ever since. Perhaps if you bugged him he wouldn't mind, though. Is n2DLib open-source?
I have updated SMS_Plus (https://codewalr.us/index.php?topic=670.msg34789#msg34789)

Screen is now centered and i have fixed an issue with Game Gear games.
For GG games, make sure they have the ".gg.tns" extension or else the emulator will run them as Master System games.

Now, my own take on Opossum Massage Simulator should be available for Nspire very soon....
Stay tuned
Lol I really need to finish my game, so it can be ported accurately to how I envisioned it. >.<
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 25, 2016, 11:00:46 pm
Quote
Also there is the problem that Matref is done with calculator programming. He stopped almost a year ago and switched to PC programming ever since. Perhaps if you bugged him he wouldn't mind, though. Is n2DLib open-source?
Oh man, really ?
I thought that only applied to his nKagura game or something.
Yes, n2DLib is open-source but i'm not sure how to modify it so it complies with the new API...

Quote
Lol I really need to finish my game, so it can be ported accurately to how I envisioned it. >.<
I guess i should have let you finish it lol
I'm tired of seeing endless of abandonned projects without a single demo so i did it.
Anyway, maybe i should rename it like "Gameblabla's Opossum Massage simulator" or something.
It's not like you are porting your game to nspire...

Also, juju ported it to Mac OSX and he wants to do an Android port.
I wish him good luck
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on March 25, 2016, 11:04:34 pm
Well, we never know. Perhaps he no longer is interested in doing calc games, but I don't know if he meant calc stuff as a whole. It would definitively be a shame if n2DLib was dead, though. It might be a good idea to make a new topic if it is, though, to ask help on how to convert it. Perhaps some of the TI-Planet guys might be able to help, since they tend to be very open towards improving Ndless compatibility.

As for the game it depends. While the game is not intended to be good quality, I might be irked if you named it like that because it might sound like you are claiming Opossum Massage as your own game/idea. You even removed CodeWalrus URL from the copyrights <.< But again, most people did this with Flappy Bird and 2048

In any case, if other versions lacks achievements it's fine, though, since achievements are not necessary. It would just make the game more funny in an update. :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: matrefeytontias on March 25, 2016, 11:43:33 pm
Quote
It is however not so easy for n2DLib... as they write diretly to the screen.
I only have to wait for matrey to support the new lcd_blit api though...
What's that ? Never heard of it, but I can try and implement it if that makes your life easier.

As for that whole thing, I'm mostly done with calculator programming as a whole, but that doesn't mean I can't maintain my existing calc projects. Of course, if n2DLib breaks because of new versions, just poke me and I'll try my best to fix it.

Also, I also ported n2DLib to PC anyway, and the version I'm using for nKaruga has a lot more things in it. I might actually bring the calc version up to date with the PC version at some point (probably in a long time, when I'm done with nKaruga).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 25, 2016, 11:47:26 pm
What's that ? Never heard of it, but I can try and implement it if that makes your life easier.
As for that whole thing, I'm mostly done with calculator programming as a whole, but that doesn't mean I can't maintain my existing calc projects. Of course, if n2DLib breaks because of new versions, just poke me and I'll try my best to fix it.
Yo Matref,
yeah the lcd_blit thing happenned because TI introduced a new model (CR4) that is incompatible with older models due to a new screen. (240x320)
anyway, it would be nice if you could implement it. (make sure to update your devkit though)


As for the game it depends. While the game is not intended to be good quality, I might be irked if you named it like that because it might sound like you are claiming Opossum Massage as your own game/idea. You even removed CodeWalrus URL from the copyrights <.< But again, most people did this with Flappy Bird and 2048

In any case, if other versions lacks achievements it's fine, though, since achievements are not necessary. It would just make the game more funny in an update. :P
I removed the URL because it was too damn long so i added you to the copyright instead.
I think i will not change the name, most people will get it with some research anyways.
PM me if you still have an issue with that
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: matrefeytontias on March 25, 2016, 11:59:29 pm
I see you mentionned an API for that. Do you have any reference that I can take a look at ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Adriweb on March 26, 2016, 12:07:16 am
It's been talked about on TI-Planet (https://tiplanet.org/forum/viewtopic.php?f=43&t=18092) and, well, the Ndless repo (https://github.com/ndless-nspire/Ndless) (see the recent commits) along with several Ndless programs that got updated for it :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 26, 2016, 12:31:38 pm
Here it is guys, Opossum Massage Simulator for TI Nspire !
(https://tiplanet.org/modules/archives/captures/1463288858oms_scr1.png)

Nothing really new other than it now saves the highscore on your calc !
Also included as a bonus is a Windows version.

(By the way, even though i have included DJ Omnimaga in the copyright because that was his game, he doesn't really endorse this version)
Windows port : https://github.com/gameblabla/opossum_massage/blob/master/release/possum_win32.7z (https://github.com/gameblabla/opossum_massage/blob/master/release/possum_win32.7z)
Source : https://github.com/gameblabla/opossum_massage (https://github.com/gameblabla/opossum_massage)

EDIT (DJ): Fixed broken download link
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on March 26, 2016, 12:35:38 pm
The It RPG Is copyright is more intended as a joke actually, about how Acclaim released some of its crappier games under LJN, perhaps to avoid risks of their reputation getting tarnished by cash-grab games or to circumvent Nintendo policies at the time. :P

Anyway this looks nice. I will have to try it later when I have a chance.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on March 26, 2016, 12:42:50 pm
The It RPG Is copyright is more intended as a joke actually, about how Acclaim released some of its crappier games under LJN, perhaps to avoid risks of their reputation getting tarnished by cash-grab games or to circumvent Nintendo policies at the time. :P
Yes, i do know and i can't wait for you to finish your version for TI-83 CE/CSE  :)
I will update the game accordingly when your version will be out

Quote
Anyway this looks nice. I will have to try it later when I have a chance.
Other than the highscore saving, it is not much different from the PC version you tried earlier.

Anyway, i'm glad this inspired you to improve your game :p
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on March 26, 2016, 05:56:49 pm
It's been talked about on TI-Planet (https://tiplanet.org/forum/viewtopic.php?f=43&t=18092) and, well, the Ndless repo (https://github.com/ndless-nspire/Ndless) (see the recent commits) along with several Ndless programs that got updated for it :)

The main reference is hackspire: https://hackspire.unsads.com/index.php/Libndls#LCD_API
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Adriweb on March 26, 2016, 07:11:29 pm
Yes obviously, I was linking the /other/ sources :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on March 30, 2016, 03:21:40 pm
On an unrelated note, I'm glad that Hackspire is back online at its original location. :P I sometimes wonder if such important information would be better off on a central site like Ticalc.org or TI-Planet, where it's 99.99% guaranteed to not shut down in 5 years if the owner forgets to pay the domain name bill or something like other smaller sites.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Lionel Debroux on March 30, 2016, 05:44:58 pm
Quote
I sometimes wonder if such important information would be better off on a central site like Ticalc.org or TI-Planet
Re-hosting Hackspire on the TI-Planet infrastructure would have made the restore process much quicker, but the reason why we didn't do that is my (especially) reluctance to further concentrate information at TI-Planet and increase its "single point of failure" aspect. IOW, the exact opposite of the philosophy in full force at another major site of the community, attempting to concentrate knowledge and power to as few places as possible by eliminating smaller documentation resources (and doing a poor job at it) :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on March 30, 2016, 06:16:32 pm
Quote
I sometimes wonder if such important information would be better off on a central site like Ticalc.org or TI-Planet
Re-hosting Hackspire on the TI-Planet infrastructure would have made the restore process much quicker, but the reason why we didn't do that is my (especially) reluctance to further concentrate information at TI-Planet and increase its "single point of failure" aspect. IOW, the exact opposite of the philosophy in full force at another major site of the community, attempting to concentrate knowledge and power to as few places as possible by eliminating smaller documentation resources (and doing a poor job at it) :)
I agree that diversifying information is good. Perhaps a better way for Learn @ Cemetech to unfold would be to aggregate links to a central location and just link to existing material, instead of copying it all.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on March 30, 2016, 07:19:58 pm
Quote
I sometimes wonder if such important information would be better off on a central site like Ticalc.org or TI-Planet
Re-hosting Hackspire on the TI-Planet infrastructure would have made the restore process much quicker, but the reason why we didn't do that is my (especially) reluctance to further concentrate information at TI-Planet and increase its "single point of failure" aspect. IOW, the exact opposite of the philosophy in full force at another major site of the community, attempting to concentrate knowledge and power to as few places as possible by eliminating smaller documentation resources (and doing a poor job at it) :)
I agree that diversifying information is good. Perhaps a better way for Learn @ Cemetech to unfold would be to aggregate links to a central location and just link to existing material, instead of copying it all.
Yeah I agree Ivoah. My reply, though, was more because I think that information that is hosted on a stable website (eg with a good uptime record and still maintained regularly) that the authors have full control on (rather than a big company like Yahoo, which single-handedly wiped out hundreds of calculator websites off the face of the Earth in 2009) is safer. But I can understand the reasoning from Lionel.

That said, one other solution is to do like ASM28Day/BasicGuru and host an offline copy on ticalc.org and TI-Planet, just in case. BasicGuruOnline remained online until 2009 when Netfirms decided to shut down hosted sites, but since a copy was also available on ticalc.org, the tutorial was not lost forever.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 08, 2016, 10:28:15 pm
Well, i have ported one of my 3DO homebrew games : KillMinds.
(https://tiplanet.org/modules/archives/captures/1460154178killminds.png)

It's based on SupraKillMinds, a game for Megadrive by Jack Noldor, itself based on Quartet.
It's a puzzle game, kind of hard to describe so i will let you play it.

Anyways, this cool game is now available for Ti Nspire CX.

EDIT: Updated the game. It is slightly faster and it gives 300 score to the player if the square is in one single color.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 08, 2016, 10:30:26 pm
/me thinks @gameblabla should also put his games in separate topics (not necessarily the files, but have a download link to the attachment) so they can be listed in the downloads section one by one


Anyway this looks kinda weird but interesting. The monochrome tiles are actually cool :D. I'm glad you're still doing Nspire games :D
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Lionel Debroux on April 11, 2016, 08:55:24 am
He he, 3DO homebrew programs being ported to a TI calculator model :)
The interaction between the TI graphing calculator and 3DO homebrew communities has occasionally gone the other way as well: RSALS sieved "3DO_1" and "3DO_2" about six years ago.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 11, 2016, 01:53:20 pm
That's a good thing. Now I wish TI calcs were as open as the 3DO. <.<
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 11, 2016, 11:39:27 pm
Quote
The interaction between the TI graphing calculator and 3DO homebrew communities has occasionally gone the other way as well: RSALS sieved "3DO_1" and "3DO_2" about six years ago.
That's cool. But the strange thing is, i thought the russian community was behind it all...

That's a good thing. Now I wish TI calcs were as open as the 3DO. <.<
3DO was not actually very open.
Before the keys got cracked, you could not do homebrew games on it.
Ironically enough, the 3DO had literally no protection against copying.
Reading the confidentials files of NUON, it seems like companies hate unlicensed software more than copying software...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 12, 2016, 03:37:13 am
Aah thanks for the clarifications. I thought they made the 3DO open on purpose in anticipation for horrible sales and poor launch titles lineup.

Also yeah, there are many oddities about certain consoles and platforms regarding nationalities:

For example, almost the entire Casio calculator community is based in France and Belgium.
Over half a decade ago, half of the Casio calc community was based in third-world and muslim countries.
Half of the TI-Nspire community is based in China and used to be very present in Brazil
Most pirate NES/SNES games come from Russia and China
Most of the best Starcraft players are from South Korea
Back in the days, almost everyone in France and Germany only used 68K calculators.
And back in the days, everyone in France disliked RPGs. No wonder why most popular SNES RPGs (such as Chrono Trigger, Final Fantasy IV and VI) never came out in France.
And in Canada, I think there have been like 20 active TI community members in the last 20 years or so, despite calculators being widely available here.
The Wii Mini came out in USA almost 1 year after Canada and almost 9 months after Europe got it.
The Sega Master System is still in production in Brazil and it's still popular.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Lionel Debroux on April 12, 2016, 05:33:56 am
Quote
Quote
The interaction between the TI graphing calculator and 3DO homebrew communities has occasionally gone the other way as well: RSALS sieved "3DO_1" and "3DO_2" about six years ago.
That's cool. But the strange thing is, i thought the russian community was behind it all...
I remember about "Alexander Troosh", and the 3DO game console fans (or whatever was their team's name) provided a baseline for the computational power of RSALS for a while after we sieved 3DO_1 and 3DO_2.
It looks like the RSALS page about most of the numbers we sieved disappeared...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 12, 2016, 08:16:22 am
I was finally able to port this Plus/4 and Commodore 16 emulator to the Ti Nspire CX !

(https://tiplanet.org/modules/archives/captures/1460448716yape_scr.png)
PRg and TAP files are supported but D64 images files are not.

As the controls are not totally properly mapped,
some games may not be playable.

To play your games, add these lines to your ndless.cfg.tns :
ext.prg=yape
ext.tap=yape

Put the yape.tns file somewhere then simply start your game
by clicking on it (or pressing Enter).

If you can overclock your TI nspire CX then i would recommend you to do so because it is not running fullspeed
on the stock clockspeed.

Enjoy the crappy C16 games on your calc !
(It helps that this calculator has letter buttons unlike most video game consoles)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 12, 2016, 06:35:58 pm
Wow that game looks cool. I need to try it (I never did before). :)  I am surprised though that this emulator runs slower on the Nspire CX considering PicoDrive reportedly runs at 100% speed even with no overclocking. ???


EDIT: TI-Planet mentions that this can run Commodore 64 games. Is that true?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Jkolade936 on April 12, 2016, 06:45:51 pm
That game looks very cool.  :D
If only I had an Nspire, but you can't have everything.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 12, 2016, 07:26:58 pm
EDIT: TI-Planet mentions that this can run Commodore 64 games. Is that true?
Unfortunely, not.
The version of YapeSDL i have ported does not emulate the Commodore 64, only the Plus/4 and C16.
I guess critor was just confused because recent versions of YapeSDL support the C64.
But when they introduced C64 emulation, they already dropped support for SDL 1.2.
So no.

Quote
That game looks very cool.  :D
Dizzy games look great but i can't say they are the best from a gameplay value.  ;)
I just don't understand WHY people like Dizzy games (you are not alone guys) because they are hard as balls
and literally need a guide to play the games.

Another cool game for C16 is the port of Monty on the Run, looks very similar to the C64 version.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 13, 2016, 01:17:18 am
Thanks for the clarification. It's a shame that SDL 1.2 support was dropped before C64 emulation got added. As for Dizzy I'll probably try them anyway at some point, but are they as bad as LJN games, Big Rigs, Hong Kong 97 and CrazyBus? Or are they just bad because they're unforgivingly hard/impossible to beat without the guide?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 17, 2016, 04:57:11 am
As for Dizzy I'll probably try them anyway at some point, but are they as bad as LJN games, Big Rigs, Hong Kong 97 and CrazyBus? Or are they just bad because they're unforgivingly hard/impossible to beat without the guide?
They are not that bad but they are very unforgiving and they don't give you any clue to where you need to go, i hate this kind of game.

So guess what guys ?
I tried to port a Microbee and a Thomson TO9 emulator and they both give me a black screen on Ti nspire CX...
That puzzles me... Why ?
I will upload the source code for both emulators on github but fortunely, i was able to port another emulator.

(https://tiplanet.org/modules/archives/captures/1460868627applei.png)
Yeah, that's an Apple I emulator.
I must say that the Apple I was a very primitive computer compared to even its sucessor.

Porting it to TI nspire was not easy and it took me a while to get things working.
Unfortunely, you won't be able to load/save memory on this version due to technical difficulties but other than that,
you have access to everything else, including the 8k RAM expension.

EDIT: Fixed the key mapping, might work faster on CR4 revisions.
EDIT2: Now working properly on CR4 revisions.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 17, 2016, 09:59:11 am
Nice :D


Can we load other ROM files than Basic ?

I've noticed I don't need to tell the emu about the "basic.rom" file and just have to type "E000R" tun run Basic, so I wonder.

I've also noticed the Basic is a 4K ROM file, when all ROMs sites I could find up to now are providing much bigger WAV files.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 17, 2016, 11:33:23 am
Can we load other ROM files than Basic ?

I've noticed I don't need to tell the emu about the "basic.rom" file and just have to type "E000R" tun run Basic, so I wonder.

I've also noticed the Basic is a 4K ROM file, when all ROMs sites I could find up to now are providing much bigger WAV files.
I honestly don't know but it doesn't seem to designed to load other roms.
I have a libSDL version that is designed to load memory files but that version is insanely slow
and input doesn't work properly anyway...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 17, 2016, 12:03:45 pm
Thank you for your reply.

Unfortunately, the keymap doesn't seem perfect.

I've been able to get the following special characters :
#!",?+-*/

But I couldn't get the following characters, which are still required for some decent Basic programming :
()=;<>:

I've even tried the ctrl+shift key modifiers but they don't seem to change anything at all.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on April 17, 2016, 01:19:39 pm
As for Dizzy I'll probably try them anyway at some point, but are they as bad as LJN games, Big Rigs, Hong Kong 97 and CrazyBus? Or are they just bad because they're unforgivingly hard/impossible to beat without the guide?
They are not that bad but they are very unforgiving and they don't give you any clue to where you need to go, i hate this kind of game.

So guess what guys ?
I tried to port a Microbee and a Thomson TO9 emulator and they both give me a black screen on Ti nspire CX...
That puzzles me... Why ?
I will upload the source code for both emulators on github but fortunely, i was able to port another emulator.

(https://tiplanet.org/modules/archives/captures/1460868627applei.png)
Yeah, that's an Apple I emulator.
I must say that the Apple I was a very primitive computer compared to even its sucessor.

Porting it to TI nspire was not easy and it took me a while to get things working.
Unfortunely, you won't be able to load/save memory on this version due to technical difficulties but other than that,
you have access to everything else, including the 8k RAM expension.
Wow, this looks great! Would an Apple ][ emulator be possible, or is it too "advanced" for the Nspire?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 17, 2016, 01:35:32 pm
Thank you for your reply.
Unfortunately, the keymap doesn't seem perfect.
I've been able to get the following special characters :
#!",?+-*/
But I couldn't get the following characters, which are still required for some decent Basic programming :
()=;<>:
I've even tried the ctrl+shift key modifiers but they don't seem to change anything at all.
Yes, it's not perfect because i had to manually program it one by one...
Could please tell me what the "()=;<>:" keys are mapped to in ndless ?
Because i have no idea...

Quote
Wow, this looks great! Would an Apple ][ emulator be possible, or is it too "advanced" for the Nspire?
It should be entirely possible, thanks to the TI nspire keys.
I simply need to find an adequate emulator for that...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 17, 2016, 03:56:17 pm
Thank you for your reply.
Unfortunately, the keymap doesn't seem perfect.
I've been able to get the following special characters :
#!",?+-*/
But I couldn't get the following characters, which are still required for some decent Basic programming :
()=;<>:
I've even tried the ctrl+shift key modifiers but they don't seem to change anything at all.
Yes, it's not perfect because i had to manually program it one by one...
Could please tell me what the "()=;<>:" keys are mapped to in ndless ?
Because i have no idea...
Some symbols should be directly accessible from the keypad :
- KEY_NSPIRE_LP : (
- KEY_NSPIRE_RP : )
- KEY_NSPIRE_EQU : =

You may map : to KEY_NSPIRE_FRAC .

Other symbols would still be problem :
<>;
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 17, 2016, 04:12:11 pm
Nice to see an Apple 1 emulator on the CX. :) But that screenshot... It says "DJ LOVES HEN@" O.O
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 17, 2016, 05:22:42 pm
Some symbols should be directly accessible from the keypad :
- KEY_NSPIRE_LP : (
- KEY_NSPIRE_RP : )
- KEY_NSPIRE_EQU : =

You may map : to KEY_NSPIRE_FRAC .

Other symbols would still be problem :
<>;
Okay thanks, i have updated Pom1 to reflect that. (a few posts above)
To type either "<" or ">", hold Ctrl or Shift and then press the "()" buttons.

Also critor, can you please test it on a TI nspire CR4 revision ?
I might have fixed the speed issues...

Quote
It says "DJ LOVES HEN@" O.O
(https://codewalr.us/Smileys/cwsmileys/laugh.gif) (https://en.wikipedia.org/wiki/Hen_%28manga%29)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 17, 2016, 05:39:52 pm
Yes, it's faster on CR4.
It doesn't trigger the compatibility mode anymore, but the display is wrong though.
(http://i.imgur.com/rnmBEqV.png)
^ I've just opened pom and typed 0123456789.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 17, 2016, 06:04:09 pm
Yes, it's faster on CR4.
It doesn't trigger the compatibility mode anymore, but the display is wrong though.
(http://i.imgur.com/rnmBEqV.png)
That's what i thought...
I might revert back to compatibility mode, because i still don't understand it doesn't work on CR4...
(It works on my nspire, it doesn't help i don't own a CR4 one...)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 17, 2016, 06:06:06 pm
Just test on Firebird ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Adriweb on April 17, 2016, 06:10:02 pm
(On recent Firebird builds (http://pimathbrainiac.me/firebird/ for some nightly binaries), you can indeed choose to emulate a CR4 hardware)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 17, 2016, 07:02:44 pm
(On recent Firebird builds (http://pimathbrainiac.me/firebird/ for some nightly binaries), you can indeed choose to emulate a CR4 hardware)
Ha, didn't know that, thanks.
Unfortunely, i have to reinstall everything, even the OS. Nooooo

EDIT: Anyway, it's fixed now, thanks to firebird.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 22, 2016, 02:45:25 am
Mame for TI Nspire, you want it ?
It's yours my friend, as long as you debug it with GDB !
TNS file (https://github.com/gameblabla/mame_nspire/raw/master/mame.tns)
Github repo (https://github.com/gameblabla/mame_nspire/)

Trying to port Wolf4SDL and guess what ? Crashes.
Crashes before the application even starts...
Same thing for MAME apparently.

Is my devkit buggy ?
I do not know but you can still give it a try on your nspire.
If it works,  then you can run your games (provided they come from the old mame 0.37 set) by putting this line in ndless.cfg.tns :
Code: [Select]
ext.zip=mame
This is going nowhere so i'll just take a break just like i did in december and hopefully
gcc and newlib will get fixed again.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 22, 2016, 03:12:59 am
Hm, sorry to hear about Wolf4SDL crashing. Maybe you could ask the Ndless team directly about what could be wrong? (assuming they are the ones who made gcc and newlib)

Also Mame for the TI-Nspire is definitively interesting if it runs. It can emulate a lot of obscure platforms if I recall correctly, right?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 22, 2016, 04:36:17 pm
Mame for TI Nspire, you want it ?
It's yours my friend, as long as you debug it with GDB !
TNS file (https://github.com/gameblabla/mame_nspire/raw/master/mame.tns)
Github repo (https://github.com/gameblabla/mame_nspire/)

Trying to port Wolf4SDL and guess what ? Crashes.
Crashes before the application even starts...
Same thing for MAME apparently.

I tried to compile it, didn't work. I had to add "#undef TRUE" and "#undef FALSE" to nucleus.h.
The reason for the crashes is probably that malloc fails. The binary is also too big to be debugged (without tweaking emu_debug_alloc_size) and it doesn't even load on OS >= 4.0.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 23, 2016, 08:47:31 am
What is the max size allowed?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 23, 2016, 10:18:40 am
The default emu_debug_alloc_size is 8MiB. It prints a message "[Zehn] emu_debug_alloc_size too small!" if the executable needs more.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 23, 2016, 02:09:33 pm
To compile Mame, you actually need to comment out the os.h file.
Maybe i should file a bug for this but you should completely remove this file because it conflicts with a lot of applications out there...
And the uncompressed executable is 30MB, so debugging it is out of question...

I guess it's really dead then...
How about you look at Wolfenstein 3D instead ? ;D
https://github.com/gameblabla/wolf4sdl_nspire (https://github.com/gameblabla/wolf4sdl_nspire)

I will see if i can't port KEGS instead, it's pretty fast on my computer and it takes like less than 1% of my cpu,
it should run pretty fast on nspire.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 23, 2016, 07:37:41 pm
To compile Mame, you actually need to comment out the os.h file.
Maybe i should file a bug for this but you should completely remove this file because it conflicts with a lot of applications out there...
It's already deprecated, but everything still uses it :-/

Quote
And the uncompressed executable is 30MB, so debugging it is out of question...
It's about 10 MiB here, but even that's too large to use on 4.0 ("ld_exec: could not malloc savedscr")

Quote
I guess it's really dead then...
How about you look at Wolfenstein 3D instead ? ;D
https://github.com/gameblabla/wolf4sdl_nspire (https://github.com/gameblabla/wolf4sdl_nspire)
Same crash?
Edit: Works fine here on OS 3.1. Probably also a memory problem. enable_relative_paths doesn't seem to work though, I had to place the .wl1.tns files in /documents.

Quote
I will see if i can't port KEGS instead, it's pretty fast on my computer and it takes like less than 1% of my cpu,
it should run pretty fast on nspire.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 23, 2016, 07:52:09 pm
Quote
Edit: Works fine here on OS 3.1. Probably also a memory problem. enable_relative_paths doesn't seem to work though, I had to place the .wl1.tns files in /documents.
ah, interesting, care to share your tns ?

Quote
Probably also a memory problem
What do you mean, memory ?
You mean that it is taking too much RAM or is it something else ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 23, 2016, 07:54:30 pm
Here you go.

(http://i.imgur.com/nzAdgXW.gif)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 23, 2016, 07:58:14 pm
Here you go.
(http://i.imgur.com/nzAdgXW.gif)
Thanks, i don't know how you got it to work though...
It crashes right away on my nspire. (OS 4.2 btw)

I will reinstall my OS and go back to OS 3.1.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 23, 2016, 08:05:59 pm
Here you go.
(http://i.imgur.com/nzAdgXW.gif)
Thanks, i don't know how you got it to work though...
It crashes right away on my nspire. (OS 4.2 btw)

I will reinstall my OS and go back to OS 3.1.

Just tried on 4.2 CX CAS (firebird) and it works fine. Do you have the latest ndless?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 23, 2016, 08:19:02 pm
Just tried on 4.2 CX CAS (firebird) and it works fine. Do you have the latest ndless?
Yeah, i had the latest ndless installed.
Reformatted my calc, put OS 3.1 then tried to run Wolfenstein : it crashed right away.
Have you tried on a real calc ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 23, 2016, 08:32:31 pm
I don't have access to my calc right now. There's only a few possibe causes for a crash on HW: Unaligned access and other HW side-effects.
The whole lot of  GCC warnings point to the first.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 23, 2016, 09:50:56 pm
Wow, if this game works on a real calc in the future, this will be epic! O.O
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 24, 2016, 02:57:20 am
I don't have access to my calc right now. There's only a few possibe causes for a crash on HW: Unaligned access and other HW side-effects.
The whole lot of  GCC warnings point to the first.
Well, i can't even run your binary on firebird...
I'm seriously thinking i have corrupted all of my Nspire-related files...

Could anybody else give Wolfenstein 3D a try on their nspire ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 24, 2016, 03:18:39 am
I hope you didn't brick your Nspire @gameblabla O.O

Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 24, 2016, 03:48:30 am
I hope you didn't brick your Nspire @gameblabla O.O
It doesn't seem so but perhaps my nspire is having the same issues as yours...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 24, 2016, 03:57:30 am
Could anybody else give Wolfenstein 3D a try on their nspire ?

No.



Just kidding, I will load it now and then edit my post to tell you what happens. :3=


EDIT: Nope it just reboots immediately on launch @gameblabla . Maybe someone else could try it in case it's just my calc being dumb, though.

Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 24, 2016, 08:42:32 am
Quote
Well, i can't even run your binary on firebird...
What happens?
Latest firebird version, latest ndless_installer and _resources (r2004)?
Any output on the serial console?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Duke "Tape" Eiyeron on April 24, 2016, 03:34:28 pm
Instacrash on 3.1.0.392 on ndless v5829093 (https://github.com/ndless-nspire/Ndless/commit/58290931e125978fc57ce3d76a565d6ba12e5f3e) (Commit short hash)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 24, 2016, 07:22:53 pm
What happens?
Latest firebird version, latest ndless_installer and _resources (r2004)?
It outright crashes... just like Duke and DJ are reporting.
And yes, latest stable version this time.

Quote
Any output on the serial console?
Well, it outputs this but i don't think that will be too useful :
Code: [Select]
Warning (120f0d20): Data abort: address=12272cc1 status=01 instruction at 120f0d20
Care to share your own ndless_installer and resources build as well, please ?
You're the only one here enjoying Wolfenstein here, that's not fair... :(
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 24, 2016, 07:33:52 pm
Quote
Any output on the serial console?
Well, it outputs this but i don't think that will be too useful :
Code: [Select]
Warning (120f0d20): Data abort: address=12272cc1 status=01 instruction at 120f0d20
Care to share your own ndless_installer and resources build as well, please ?
You're the only one here enjoying Wolfenstein here, that's not fair... :(

I could, but that's highly unlikely to be the issue here.
I assume you're running 32-bit firebird on x86? That version has some checks for alignment built-in (much cheaper on 32-bit)
so it behaves more like a real calc. I see that this data abort is at an unaligned address.
You need to read the warnings gcc spits out! I guess I'll set "-Werror=align-cast" by default.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 25, 2016, 01:19:03 am
Quote
I assume you're running 32-bit firebird on x86? That version has some checks for alignment built-in (much cheaper on 32-bit)
so it behaves more like a real calc. I see that this data abort is at an unaligned address.
Yeah, i'm running a 32-bit nighly build.

Quote
You need to read the warnings gcc spits out! I guess I'll set "-Werror=align-cast" by default.
I looked at the warnings using GCC 5.3.0 and turning on all the warnings, but i see nothing about unaligned cast,
only non handled switches and stuff.
I feel like this is going to take a lot of time to fix...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 25, 2016, 02:01:58 pm
Got it: I assumed that all relocation pointers are properly aligned, but in this case it seems to not be the case.
This crashes ndless' Zehn loader during relocation.
The cause for the bad alignment (which will cause slowdowns, so that should be fixed) is https://github.com/gameblabla/wolf4sdl_nspire/blob/master/src/wl_def.h#L721
Notice the boolean at the beginning.

Preliminary ndless r2005 with fix attached.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 25, 2016, 03:17:33 pm
Got it: I assumed that all relocation pointers are properly aligned, but in this case it seems to not be the case.
This crashes ndless' Zehn loader during relocation.
The cause for the bad alignment (which will cause slowdowns, so that should be fixed) is https://github.com/gameblabla/wolf4sdl_nspire/blob/master/src/wl_def.h#L721
Notice the boolean at the beginning.

Preliminary ndless r2005 with fix attached.
How the hell you detected this ?
I can confirm it now works with the preliminary ndless_resources file.
That being said, i have no idea how to properly fix this...
Tried to change the variables types but to no avail, i hope this don't mean i need to completely redo the code...

I will give Mame a try on my calc to see if this works with the new ndless.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 25, 2016, 03:27:02 pm
Got it: I assumed that all relocation pointers are properly aligned, but in this case it seems to not be the case.
This crashes ndless' Zehn loader during relocation.
The cause for the bad alignment (which will cause slowdowns, so that should be fixed) is https://github.com/gameblabla/wolf4sdl_nspire/blob/master/src/wl_def.h#L721
Notice the boolean at the beginning.

Preliminary ndless r2005 with fix attached.
How the hell you detected this ?
It was actually quite easy, the PC of the data abort was inside ndless_resources so I just looked up where exactly it is.
It was an ldr inside the relocation loop, which I replaced by several memcpy.

Quote
I can confirm it now works with the preliminary ndless_resources file.
That being said, i have no idea how to properly fix this...
Tried to change the variables types but to no avail, i hope this don't mean i need to completely redo the code...
The issue here is that declaring a struct like that in standard C would cause proper alignment of all members on ARM,
but for some reason it decides to not do it here. Either that's a side effect of "-Os" or some other compiler flag.

Quote
I will give Mame a try on my calc to see if this works with the new ndless.
I doubt it. If it were the same issue, the executable would've run fine on firebird.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 25, 2016, 04:07:24 pm
@Vogtinator I know this isn't relates to Wolfeinstein 3D but do you know how I could check why PicoDrive won't run properly on only my Nspire CX, even though it runs on everyone else's?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 25, 2016, 04:20:39 pm
You can try to compare your manuf (read it using nsNandMgr) with a known working one. If there are no differences, it's definitely a hardware issue.
I can't tell which part is broken directly, but as it's practically impossible to repair anyway it's not worth it doing tests IMO.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Duke "Tape" Eiyeron on April 25, 2016, 06:50:20 pm
It didn't worked on my calc, do I need another binary or somethng with wolf?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 25, 2016, 06:51:08 pm
Ok thanks. I'll have to check with nsNandMgr then. I hope it's not due to faulty hardware.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 25, 2016, 06:57:27 pm
Ok, it does work pretty well on Nspire with the new ndless so i'm sharing it.
I have fixed the default controls and the relative path issues so just put the game data and the tns file in the same folder
and run it.
https://github.com/gameblabla/wolf4sdl_nspire/raw/master/shareware/wolf3d_nspire.zip (https://github.com/gameblabla/wolf4sdl_nspire/raw/master/shareware/wolf3d_nspire.zip)

Quote
It didn't worked on my calc, do I need another binary or somethng with wolf?
Well, make sure to update your ndless_resources with the new one first and reboot your calc.
Then, download the game and run it.

Quote
The issue here is that declaring a struct like that in standard C would cause proper alignment of all members on ARM,
but for some reason it decides to not do it here. Either that's a side effect of "-Os" or some other compiler flag.
Unfortunely, even with -O0, it still doesn't work but maybe GCC is the culprit here.
Any workaround ?

Quote
I doubt it. If it were the same issue, the executable would've run fine on firebird.
Indeed, you are right. In fact, it seems that i have broken it... lol
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 25, 2016, 07:12:22 pm
@Vogtinator I know this isn't relates to Wolfeinstein 3D but do you know how I could check why PicoDrive won't run properly on only my Nspire CX, even though it runs on everyone else's?

You're not alone, DJ Omnimaga. I cannot run any ROM with PicoDrive.
"couldn't load ROM", that's all it's able to tell me. :(
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 26, 2016, 12:26:50 am
Oh right, I forgot that you couldn't either. That makes us two. And yes, same error on my end. If only the original author of PicoDrive had error logging.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 26, 2016, 12:42:00 am
Oh right, I forgot that you couldn't either. That makes us two. And yes, same error on my end. If only the original author of PicoDrive had error logging.
I don't know why you guys have so much trouble with Picodrive...
Actually, Picodrive had some error checks but i had to remove them because it was actually making the Nspire crash. So yeah.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 26, 2016, 02:19:24 am
Yeah, as mentioned before, it could be that our calculators were permanently bricked by another program years ago, or they had faulty hardware in the first place.

The TI-Nspire is not known to be very stable nor have reliable hardware, which is one of the reason why I prefer developing for the TI-84 Plus CE.

/me wishes someone made ceSDL (SDL for the 83 Premium CE/84+CE)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: rwill on April 26, 2016, 05:07:02 pm
gameblabla,

there is a #pragma pack(1) here:
https://github.com/gameblabla/wolf4sdl_nspire/blame/master/src/wl_def.h#L23

this might lead to severe struct member alignment issues.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 26, 2016, 05:57:07 pm
gameblabla,

there is a #pragma pack(1) here:
https://github.com/gameblabla/wolf4sdl_nspire/blame/master/src/wl_def.h#L23

this might lead to severe struct member alignment issues.
Yes, you are right, it fixes the alignment issues.
However... it breaks the game in a different way. ( the levels are completely broken in an interesting way with no walls !)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: rwill on April 27, 2016, 08:15:20 am
Well of course it breaks things because Wolfenstein was written for
16bit x86 DOS and the SDL port did not fix all portability issues
that may arise.

Wolfenstein reads complete structures from data files. This is
somewhat like doing, for write and read:

fwrite( &s_struct, sizeof( s_struct ), 1, file );
fread( &s_struct, sizeof( s_struct ), 1, file );

Now if this happens on the same platform or the tool that writes
the structure is _targeting_ a certain platform, where the memory
layout of the structure is known, it is fine. Reading complete
structs or arrays of structs from disk is pretty fast. Imagine
saving a complete program state to disk and then reloading it
to memory and continuing where it left of. Like Hibernation energy
modes on modern PCs.

Sadly - if the memory layout of the structure changes, like what
happens when a structure is changed or alignment requirements of
a platform let the compiler generate different code, this completely
breaks.

So what one normaly does when writing portable code is having
a fixed format of how things are layed out on disk, then reading
the whole chunk of data and then parsing/unpacking it to native
data structures or objects or whatever. One also does need to take
byte order into account. For example network protocols work like this.

Now for your Wolfeinstein port.. I gave it a try and it appears you
need these functions:

Code: [Select]
uint8_t CAL_read_byte( int handle )
{
uint8_t b;
read( handle, &b, sizeof( b ) );
return b;
}

uint16_t CAL_read_word( int handle )
{
uint16_t w;
read( handle, &w, sizeof( w ) );
return w;
}

uint32_t CAL_read_dword( int handle )
{
uint32_t dw;
read( handle, &dw, sizeof( dw ) );
return dw;
}


void CAL_read_mapfiletype( int handle, mapfiletype *ps_mapfiletype )
{
int32_t i_idx;

ps_mapfiletype->RLEWtag = ( word )CAL_read_word( handle );

for( i_idx = 0; i_idx < NUMMAPS; i_idx++ )
{
ps_mapfiletype->headeroffsets[ i_idx ] = ( int32_t ) CAL_read_dword( handle );
}
}

void CAL_read_maptype( int handle, maptype *ps_maptype )
{
int32_t i_idx;
ps_maptype->planestart[ 0 ] = ( int32_t ) CAL_read_dword( handle );
ps_maptype->planestart[ 1 ] = ( int32_t ) CAL_read_dword( handle );
ps_maptype->planestart[ 2 ] = ( int32_t ) CAL_read_dword( handle );
ps_maptype->planelength[ 0 ] = ( word ) CAL_read_word( handle );
ps_maptype->planelength[ 1 ] = ( word ) CAL_read_word( handle );
ps_maptype->planelength[ 2 ] = ( word ) CAL_read_word( handle );
ps_maptype->width = ( word ) CAL_read_word( handle );
ps_maptype->height = ( word ) CAL_read_word( handle );

for( i_idx = 0; i_idx < 16; i_idx++ )
{
ps_maptype->name[ i_idx ] = ( char ) CAL_read_byte( handle );
}
}

and replace these lines in the CAL_SetupMapFile function:

Code: [Select]
    //read(handle, tinf, length);
CAL_read_mapfiletype( handle, tinf );

Code: [Select]
        //read (maphandle,(memptr)mapheaderseg[i],sizeof(maptype));
CAL_read_maptype( maphandle, mapheaderseg[ i ] );
   
Now this does not take byte order into account and is very slow
but anyway..

I noticed that there are things like
Code: [Select]
char fname[ 13 + sizeof( DATADIR ) ];
which is too small with you appending ".tns", corrupting the stack.

Also it also runs way too fast, did you remove the Timer ? What
if critor overclocks his Nspire to 230mhz and then gets shot by
some SS guy doing over 9000 rounds per minute...

Oh my.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 27, 2016, 09:04:30 am
Wow, thanks a lot rwill !
Thanks to you, i always learn something. :)
I can confirm this indeed fixes the issues with the maps, they are now loading properly.

Anyway, updated the game to reflect that and i will put it on tiplanet.

Quote
Also it also runs way too fast, did you remove the Timer ? What
if critor overclocks his Nspire to 230mhz and then gets shot by
some SS guy doing over 9000 rounds per minute...
I simply disabled a SDL_Delay in the Calctics function because i thought it might slow on nspire
but this turned out not to be the case.
Also, your scenario is unlikely to happen because even at 230mhz, it will be way too slow. :p

EDIT: Ok, done. I also took the time to fix the saves and the configuration file before uploading it to tiplanet.
(https://tiplanet.org/modules/archives/captures/1461749190wolf.png)
Grab it here. (https://tiplanet.org/forum/archives_voir.php?id=504740)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 27, 2016, 01:37:13 pm
I updated the Ndless SDK and ndless: https://github.com/ndless-nspire/Ndless/releases/latest
Unaligned relocations are now implemented in the "make-prg" loader as well, so it'll run on Ndless < r2005 too.
You need to rebuild your SDK ("make" in the git root) for this to work.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 27, 2016, 03:40:14 pm
I'll try the new version of the game to see if it runs on my calculator.


EDIT: Good news, it works flawlessly on my calc :D.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 27, 2016, 05:20:54 pm
EDIT: Good news, it works flawlessly on my calc :D.
Good to know !

However, it seems that some bugs persist.
For example, when you die, a table appears just in front of you. (!)

Probably a side effect of removing the "#pragma pack(1)"...
I'll investigate.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 27, 2016, 05:23:10 pm
Aah I see. I tried the game in easy mode so I didn't encounter many enemies. :P

I'll probably make a news about this soon.


Btw @gameblabla : The link to the post about the Sega Dreamcast game you ported to the Nspire is missing from the first post of this topic and some screenshots give 404 not found there.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 27, 2016, 05:57:45 pm
However, it seems that some bugs persist.
For example, when you die, a table appears just in front of you. (!)

Probably a side effect of removing the "#pragma pack(1)"...
I'll investigate

It was there with packing enabled as well. I thought it was a bed and he simply fell asleep from exhaustion xD

(Don't forget to update your SDK :P)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 27, 2016, 06:00:11 pm
According to the TI-Planet news, when you die it can also lead to controls no longer responding (which I assume it means the game freezes, right?)

Also I wonder if we should have a topic for Ndless SDK/C development environment setup support?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 27, 2016, 06:59:13 pm
I forgot there was several versions of Wolfenstein 3D...
I have updated my port to reflect this and now, you can play Spear of Destiny and the full versions as well !

Quote
It was there with packing enabled as well. I thought it was a bed and he simply fell asleep from exhaustion xD
Rofl, i can tell you didn't play Wolf3D that much.
Well, if it's not an alignement issue then it's something else instead...
With the new version, it's the "Demo" pict that appears instead.

According to the TI-Planet news, when you die it can also lead to controls no longer responding (which I assume it means the game freezes, right?)
I was unable to reproduce this...

Quote
Also I wonder if we should have a topic for Ndless SDK/C development environment setup support?
There's already a tutorial on Hacksprite that explains this. (For Unix, that is)
I know Windows is a pain in the ass but it might be a good idea to update the SDK.

Quote
Btw @gameblabla : The link to the post about the Sega Dreamcast game you ported to the Nspire is missing from the first post of this topic and some screenshots give 404 not found there.
What dreamcast game ? Fruity ?
It seems to work well here on my side.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 27, 2016, 08:48:04 pm
Yeah I meant a topic for SDK problems for people who followed the tutorials to no avail.

And yeah I meant Fruity. It is not mentioned at all in the first post of this topic.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: rwill on April 28, 2016, 05:02:44 pm
However, it seems that some bugs persist.
For example, when you die, a table appears just in front of you. (!)

Probably a side effect of removing the "#pragma pack(1)"...
I'll investigate

It was there with packing enabled as well. I thought it was a bed and he simply fell asleep from exhaustion xD

(Don't forget to update your SDK :P)

Well...

there are things like this in the source:
Code: [Select]
gamestate.weapon = (weapontype) -1;                     // take away weapon

Now gamestate.weapon is of enum type weapontype which does not specify -1 as a valid enum. GCC being pedantic as always probably uses this as an excuse to let checks like gamestate.weapon != -1 being true. For the specific case that something wrong is drawn there is this:
Code: [Select]
    if (gamestate.weapon != -1)
    {
        shapenum = weaponscale[gamestate.weapon]+gamestate.weaponframe;
        SimpleScaleShape(viewwidth/2,shapenum,viewheight+1);
    }

If the if() gets optimized to true always shapenum is something read at weaponscale[ -1 ] plus whatever.

gameblabla, see if changing the lines around 830 in wl_def.h to the following helps:
Code: [Select]
#define NUMWEAPONS      4
typedef enum
{
    wp_none = -1,
    wp_knife = 0,
    wp_pistol = 1,
    wp_machinegun = 2,
    wp_chaingun = 3
} weapontype;

The correct way would be to always use the enum names and never a numeric value.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 28, 2016, 07:01:46 pm
Just how rwill you can spot issues like this ?
I didn't even know GCC's optimisation was that aggressive !

It works properly now so congrats rwill.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on April 28, 2016, 07:08:24 pm
Just how rwill you can spot issues like this ?
Turn on all GCC warnings (-Wall -Wextra as a minimum, there are even more) and use one (or more than one) static analyzer.

Quote
I didn't even know GCC's optimisation was that aggressive !
You should read https://lwn.net/Articles/342330
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 28, 2016, 07:09:54 pm
This is this kind of collaboration that helps projects grow and improve. Good job guys :3=
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 28, 2016, 07:27:25 pm
Turn on all GCC warnings (-Wall -Wextra as a minimum, there are even more) and use one (or more than one) static analyzer.
There was so much warnings, i did not even bothered to enable the switches. :P

Quote
This is this kind of collaboration that helps projects grow and improve. Good job guys :3=
Yeah, but one could argue that rwill in fact, ported the game rather than me because without his help,
it just wouldn't work on Nspire.

That's a lots of strange issues i would have probably never thought of.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 28, 2016, 08:01:16 pm
You still took the initiative to start the porting, though. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: rwill on April 29, 2016, 06:28:17 am
Just how rwill you can spot issues like this ?
I didn't even know GCC's optimisation was that aggressive !

It works properly now so congrats rwill.

Well I checked what happens in the player death function Died()
and could not spot where it spawns a table. I saw the assignment
of -1 to gamestate.weapon in there though and remembered that
GCC is sometimes doing questionable things when optimizing
as -1 was missing in the weapontype enum. Seeing that
gamestate.weapon was used as an index into an array that
determines what gets drawn as the active weapon then kind
of solved the issue already.

Sometimes you can try to build without optimizations to see if the
problem goes away. If it does it is most likely a
programmer <-> compiler issue. Debugging by inserting printf()s
at certain places in the code can help too, especially when running
without debugging symbols at a high optimization level.

I do not use high warning levels and/or static analyzers - they
give a false sense of security. For example even with trying I cannot
get gcc to spit out a warning at the lines in question in the wolf code
so....

Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Lionel Debroux on April 30, 2016, 08:23:44 am
Quote
I do not use high warning levels and/or static analyzers - they give a false sense of security.
I feel that not using them and hiding important warnings gives a worse false sense of security, though :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: rwill on April 30, 2016, 10:00:21 am
Quote
I do not use high warning levels and/or static analyzers - they give a false sense of security.
I feel that not using them and hiding important warnings gives a worse false sense of security, though :)

Well at least I know that there isn't an automatic tool holding my hand when writing code.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 30, 2016, 03:57:24 pm
There are certain people, such as TI and HP calc OS dev teams that should use tools with warnings enabled. :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on May 10, 2016, 12:14:10 am
So for those who finished the shareware version of Wolfeinstein 3D on their Nspire, Critor has made available Spears of Destiny demo (a prequel to Wolfeinstein 3D): https://tiplanet.org/forum/archives_voir.php?id=521451

It requires installing Wolfeinstein 3D. Source of the info: https://tiplanet.org/forum/viewtopic.php?f=43&t=18356

Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on May 15, 2016, 07:21:27 pm
Hi, i have ported a Wolf3D modification by M2 Software !
It's called Witching Hour and it's a horror game.

(https://tiplanet.org/modules/archives/captures/1463339882wh_scr1.png)

You can download it on Tiplanet (https://tiplanet.org/forum/archives_voir.php?id=539719).

Website of the author :
http://87.207.49.73/index.php?siteID=WH (http://87.207.49.73/index.php?siteID=WH)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on May 15, 2016, 07:38:57 pm
Wow, they sure wanted the game to be dark. O.O Nice to see this ported gameblabla
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 13, 2016, 11:37:28 pm
And now, some emulator news...
I finally got Temper to work on Ti nspire !
The transition to n2DLib isn't finished though as i still have to migrate input to native....
It is much faster than Hugo though.

CD games are now supported as well, just make sure to put your syscards files (syscard3.pce.tns, syscard.pce.tns...)
in the 'syscards' folder.

Controls
Touchpad : Dpad
Ctrl : Button I
Shift : Button II
Var : Button III
Del : Button IV
7 : Button V
9 : Button VI
DOC : RUN (that's how it's called, don't run lmao)
TAB : SELECT

You can download it below.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 14, 2016, 02:06:19 am
Nice :D I'll have to give it a try when I get some more free time (hopefully it works on my semi-bricked calc). Keith Courage on my Nspire sounds quite fun (assuming that's not a CD game)

Also I wonder if any CD game will fit at all O.O. Aren't most early CD games using WAV-like music files that  have no lossless compression? I think Ys Book I & II is like 515 MB.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on June 14, 2016, 08:27:27 am
Temper is for emulating the Pc Engine / Turbografx.

If I remember well, you already ported Hugo which targets the same hardware.

So in which way is Temper better or worse than Hugo ?

Thanks. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 14, 2016, 12:31:24 pm
Temper is for emulating the Pc Engine / Turbografx.
If I remember well, you already ported Hugo which targets the same hardware.
So in which way is Temper better or worse than Hugo ?
Thanks. :)
I would say it is better.
For once, it has a menu.
And for two, it seems to run faster and it does not do some odd bitdepth conversion like Hugo,
which is great.

I have now fixed CD games :
Simply make sure to have the cd bioses called respectively syscard.pce.tns, syscard2.pce.tns and syscard3.pce.tns
in the syscards folder.

I personally tried Megaman by PCEDEV and it seems to run fairly smoothly.
Also, the controls were not properly mapped : it's fixed too.

Quote
Also I wonder if any CD game will fit at all O.O. Aren't most early CD games using WAV-like music files that have no lossless compression? I think Ys Book I & II is like 515 MB.
They can fit, if you remove the CDDA tracks and remove the WAV info from the cue file, which is pretty easy to do.
For games that do use compressed music, you can use a ISO editor and just dummy it out.
But for games that relies on heavy cutscenes... well, there's not much we can do.
You just can't expand the NAND so easily.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 14, 2016, 03:48:14 pm
Hm I'll check then. Are there any free tools to remove WAV files from cue files? Years ago I remember having an hard time just trying to find a freeware (not shareware/trial) ISO mounting software, so I can't imagine how hard it would have been to find one that lets you edit them too. Will some games crash if audio files are missing?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 14, 2016, 04:46:41 pm
Hm I'll check then. Are there any free tools to remove WAV files from cue files?
You're kidding right ?
You can do so with any text editor, here's how i did it for Megaman :
(click to show/hide)
to this :
(click to show/hide)
See what i did ?
I removed all the audio tracks info from the cue and deleted the accompagning wav files along with.

Quote
Years ago I remember having an hard time just trying to find a freeware (not shareware/trial) ISO mounting software, so I can't imagine how hard it would have been to find one that lets you edit them too.
If you're looking for a decent ISO editor, there's UltraISO on Windows that does the job pretty well.
You might be able to open some iso files with 7zip too.

Quote
Will some games crash if audio files are missing?
For CDDA tracks, no, they will still work even if you remove them.
If you are removing audio files inside the ISO however, yes, it could happen, even if you dummy them out.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 14, 2016, 04:59:21 pm
Well, the last time I tried mounting an ISO file was back in 2009. Back then I did multiple Google searches for alternatives to Daemon Tools and out of a dozen of alternatives, only one was Free. The rest were all paid or trial versions with severe limitations. So I imagined that if I also wanted the ability to edit that it would be even worse. I mean, you know in what capitalist world we live in, right? <_<

Anyway I'm glad that I was wrong (or at least, I'm glad that things changed) and that I can do it the way you described.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 14, 2016, 05:59:39 pm
Well, the last time I tried mounting an ISO file was back in 2009. Back then I did multiple Google searches for alternatives to Daemon Tools and out of a dozen of alternatives, only one was Free. The rest were all paid or trial versions with severe limitations. So I imagined that if I also wanted the ability to edit that it would be even worse. I mean, you know in what capitalist world we live in, right? <_<
I have fully switched to GNU/Linux Lubuntu since two years ago and i don't know what you're talking about. :p
All the tools i need, and yes including ISO mounting thanks to cdemu, are free and open-source.
(click to show/hide)

Quote
Anyway I'm glad that I was wrong (or at least, I'm glad that things changed) and that I can do it the way you described.
Don't forget to add the ".tns" extension inside the cue file (like i did) and to the iso file as well.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 14, 2016, 06:06:18 pm
Yeah my issue was using Windows <_<
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 17, 2016, 06:29:45 am
I have updated Temper and brought some well needed fixes...
Some CD games like Ys I & II did not work before... Of course, they are now working.
(https://tiplanet.org/modules/archives/captures/1466143915ys.png)
And yes, i tried it, it does work real hardware !  :)

Unfortunely, removing CDDA tracks is actually more complicated than i thought it would be.
The only way found to achieve that was to use bincuesplier provided with WiiEngine.
Code: [Select]
bincuespliter.exe ys.cue binThen i get the generated bin file (16.6Mb for Ys I & II) and i create a cue file for it.
Code: [Select]
FILE ys.bin.tns BINARY
TRACK 02 MODE1/2352
PREGAP 00:02:00
INDEX 01 00:00:00
And then i can play it.

Note that if the game is using compressed music (which some of them do) then there's not much you can do...
I forgot to mention that you can now change the default mapping. (not fully, only for some keys)
Supergrafx games should also work on it.

Enjoy Ys on your calc. (if you're willing to go through that...)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 17, 2016, 06:33:02 am
Ys: Best game series ever (or almost). I am unsure if I will go through the hassle, but it's nice that it's now possible to get that classic to work on a TI-Nspire. :)

The only downside is that the music is the best part in any Ys game by far, so playing those games without music makes you miss out on a lot. But it's still fun nonetheless. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 17, 2016, 06:39:01 am
Ys: Best game series ever (or almost). I am unsure if I will go through the hassle, but it's nice that it's now possible to get that classic to work on a TI-Nspire. :)
Not a huge fan of Ys's gameplay but i loooove ys pron.

Quote
The only downside is that the music is the best part in any Ys game by far, so playing those games without music makes you miss out on a lot. But it's still fun nonetheless. :)
I agree, that kind of sucks lol...
The ndless team was talking about implementing USB audio support but that was two years ago...
A shame really, as i even got the otg adapter and usb audio stick !
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 17, 2016, 06:43:56 am
Well, Ys is quite primitive compared to other games, especially the older games. You run through enemies to attack them, for example, and unlike Final Fantasy where you get 200 different items, in Ys you have 20 max, with about 3 magic spells. However for some reasons they still managed to make them fun.

My only gripe about the older Ys games is that on the NES and SNES they are super-ultimate-mega-ultra-giga-bats***-motherf***ing hard. Unless you have the exact level requirement+armor to beat an enemy, you die in two hits and if you have one too many levels, then it takes 200 kills to level up. At least the PCE ports are more balanced.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 23, 2016, 09:41:54 pm
Here are the Ys games you can (theorically) play on TI-Nspire thanks to the emulators i have ported :
- Ys I (Master System)
- Ys I & II (PC-Engine)
- Ys III (PC-Engine, SNES and Genesis)
- Ys IV (SNES and PC-Engine)
- Ys V (SNES)

I'm not sure though if you can fit the PC-Engine version of Ys IV due to its size as i heard that many tracks were using the internal soundchip....
This is something i need to check out.

But anyway, i have released a minor update to Temper.
It's smaller and slightly faster.

I'm still looking for someone to switch the input code to native as it's harder than i thought it would be..
https://github.com/gameblabla/temper_nspire (https://github.com/gameblabla/temper_nspire)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 23, 2016, 10:22:20 pm
Actually, some Ys Book I and II and Ys III tracks use the soundchip as well. Could this be problematic?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 23, 2016, 10:33:45 pm
Actually, some Ys Book I and II and Ys III tracks use the soundchip as well. Could this be problematic?
Sorry, perhaps i need to explain a bit.

The reason why i'm saying this is because i fear that Ys IV might be too big to fit the TI-Nspire NAND.
Because Ys IV is not using many CDDA tracks and instead relies on compressed voices, cutscenes and soundchip generated soundtracks,
i fear that even stripping the game out of its CDDA tracks might not be enough to make the game small enough to fit the small NAND.
(The game needs to be smaller than 100Mb)

For example, Ys Book I & II is 16 Mb without the CDDA tracks and Dracula X is 22Mb.
And Ys I & II IS playable on the real calc, perhaps i should do a video about it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 23, 2016, 11:52:27 pm
Oh I see. Yeah I noticed when playing that it had many non-CDDA tracks. Thanks for explaning in further details.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 26, 2016, 01:32:46 am
I have released a minor update to Temper (the syscards folder was not created) and PokeMini. (now runs faster)
Critor made a news about Temper too (https://tiplanet.org/forum/viewtopic.php?t=18776&p=205343), if you want to check it out.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 26, 2016, 03:04:16 am
Yeah I saw the news. Pretty nice and congrats. Hopefully I can make one soon :). Also thanks for the update. :)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 27, 2016, 04:08:53 am
So Ys IV without the CDDA tracks is 76 Mb so it does fit ! :) (not in my asshole, the nand)
(https://tiplanet.org/modules/archives/captures/1466973062ys4.png)

So just for the sake of it, i gave Ys V a try on my PocketSNES emulator.
Unfortunely, something totally unexpected happened...

The game checks if the SPC700 (the sound processor) is present and will freeze if it is not present.
I removed all the sound code to my emulator and as a result, the game did not work...

New version of PocketSNES

Due to that, i have decided to revamp PocketSNES a bit.
It comes in 4 different cores now :
a minimal version of PocketSNES 1.39, the full PocketSNES 1.39, PocketSNES 1.43 with no sound and the full PocketSNES 1.43 core.

The minimal version of PocketSNES 1.39 is very fast and is now twice as fast as the previous version !
Super Mario World is closer to fullspeed and Super Mario Kart is now bearable. (still slow)
All of that, on a non-overclocked TI-nspire CX !

This also means you have faster SuperFX emulation :p (with the full PocketSNES 1.39 core that is)

By the way, Ys V only works properly with the full SnesEx 1.43 core.

You can download the new version here. (https://github.com/gameblabla/pocketsnes-nspire/raw/master/PocketSNES-nspire.zip)

I also gave PicoDrive a try again and it now no longer works...
Not even the older versions work now.
Seems like it never worked for anyone other than me.
I need to look at this closer...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 27, 2016, 04:19:33 am
New PocketSNES? *.* Nice, it looks like I'll have to give it a try soon. Has the frame rate improved too or just the emulation speed?

Also I'm glad that Ys IV fits. As for Ys V SNES I am surprised that it fails, since the most common games to fail in SNES emulators are Star Ocean and Mario RPG.

Regarding PicoDrive, good luck fixing it. I wonder if this means my calc will be able to run it in the future? :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 27, 2016, 04:26:38 am
New PocketSNES? *.* Nice, it looks like I'll have to give it a try soon. Has the frame rate improved too or just the emulation speed?
With the minimal version of PocketSNES 1.39, the improvements to the framerate are significant : twice as fast !
To give you an idea how fast it is :
Super Mario World is so fast, it runs fullspeed on my 266Mhz TI-Nspire with no frameskip.
Super Mario Kart runs at 40 FPS with a frameskip set to 2 on my 266Mhz nspire. (it used to be much slower before)
Star Fox went from crawling to slow. (yay, threedee games on mah calculator)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 27, 2016, 03:12:55 pm
Darn, that's fast. It might be due to my Nspire but I always had the impression that PocketSNES ran at about 30-40% speed in Mario Kart but at half the FPS. Maybe it's beecause the game was running slower so I had the impression that the frame rate was lower than it was. On a side note, can we change the frame skipping settings in this version?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 27, 2016, 09:10:01 pm
Darn, that's fast. It might be due to my Nspire but I always had the impression that PocketSNES ran at about 30-40% speed in Mario Kart but at half the FPS. Maybe it's beecause the game was running slower so I had the impression that the frame rate was lower than it was.
Well, it wasn't your Nspire, Mario Kart was slow on all nspire.
It is still kind of slow but it's much faster than before.

Quote
On a side note, can we change the frame skipping settings in this version?
No. This thing has no menu so there's no frame skipping settings.
It's set to "Auto", which means it will drop frames only when needed.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 27, 2016, 09:49:09 pm
Would adding a menu be very hard?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 27, 2016, 10:35:10 pm
Would adding a menu be very hard?
No, it's just that it will take a lot of time doing it.
I need to make a template...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 27, 2016, 10:44:49 pm
Even longer than porting Quake? O.O
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 28, 2016, 12:34:19 am
Even longer than porting Quake? O.O
kind of because i need to do it from scratch.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 28, 2016, 12:45:19 am
Yeah true. It was kinda strange looking at the whole picture, though :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Ivoah on June 28, 2016, 04:13:55 pm
New PocketSNES? *.* Nice, it looks like I'll have to give it a try soon. Has the frame rate improved too or just the emulation speed?
With the minimal version of PocketSNES 1.39, the improvements to the framerate are significant : twice as fast !
To give you an idea how fast it is :
Super Mario World is so fast, it runs fullspeed on my 266Mhz TI-Nspire with no frameskip.
Super Mario Kart runs at 40 FPS with a frameskip set to 2 on my 266Mhz nspire. (it used to be much slower before)
Star Fox went from crawling to slow. (yay, threedee games on mah calculator)
It's so awesome to finally have a decent SNES emulator on the Nspire. It only took forever :) Congrats on your hard work, I'm sure you'll be the cause of much distracted students in the future ;)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 28, 2016, 04:35:16 pm
It was surprising indeed how long it took to get a SNES emu for the Nspire, considering how popular the console was, but I guess it was due to things partly out of our control. >.< (like with Atari emulation)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 28, 2016, 05:27:16 pm
I'm sure someone like calc84maniac could have done it well before me if he wanted to but it seems that he left the Nspire scene quickly after Gpsp...
(probably because he got too many death threats :p)
Speaking of Gpsp, well, he violated the gplv2 because he never released the source code to it...

I never honestly thought i would reach that speed on a TI-Nspire.
I even said at one point on omnimaga that fast Super NES emulation would never happen.
The irony is that the SNES emulator is now faster than even Picodrive... lol
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on June 28, 2016, 05:41:08 pm
I'm sure someone like calc84maniac could have done it well before me if he wanted to but it seems that he left the Nspire scene quickly after Gpsp...
(probably because he got too many death threats :p)
Speaking of Gpsp, well, he violated the gplv2 because he never released the source code to it...
He did: https://www.omnimaga.org/ti-nspire-projects/gpsp-nspire-(gba-emulator)/msg314055/#msg314055
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 28, 2016, 08:24:37 pm
I'm sure someone like calc84maniac could have done it well before me if he wanted to but it seems that he left the Nspire scene quickly after Gpsp...
(probably because he got too many death threats :p)
Speaking of Gpsp, well, he violated the gplv2 because he never released the source code to it...

I never honestly thought i would reach that speed on a TI-Nspire.
I even said at one point on omnimaga that fast Super NES emulation would never happen.
The irony is that the SNES emulator is now faster than even Picodrive... lol
IIRC it had something to do with the lack of SNES emulators available to port to the TI-Nspire CX and people were probably not willing to write a brand new emulator from scratch. Plus I think there was SNESAdvance, which gp-SP Nspire probably ran, so that was an alternate but broken way to play SNES games. As for Calc84 I think he still idles in #omnimaga, #cemetech, #ti and #ez80dev or something, but he is no longer really active in the TI scene and I don't think he is even aware that CodeWalrus exists, let alone what is it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 28, 2016, 11:22:50 pm
He did: https://www.omnimaga.org/ti-nspire-projects/gpsp-nspire-(gba-emulator)/msg314055/#msg314055
Oh my... well now i'm feel like an idiot. hahaha
After modifying Gpsp to work with the recent GCC, i got it to work... almost.
Once you exit the emulator, it would just flat out crash.
I remember that using the function exit sometimes crashes the nspire for no good reason and unfortunely, Gpsp seems to rely on it...
It does seem to run a little faster than before though.

Anyway, i'm still releasing the binaries (and source) if anyone wants to take a look.

Quote
IIRC it had something to do with the lack of SNES emulators available to port to the TI-Nspire CX and people were probably not willing to write a brand new emulator from scratch.
I think this may have to do with the immaturity of dev tools.
Remember when i said that sms_plus could not be ported because it was crashing on Nspire ?
After GCC 5.1 and a new version of Newlib was released, it finally worked as intended.
So yeah, you only got SNES emulation in 2015 and only one year after, it got significantly refined.

I remember the state of the Nspire scene after Gpsp... there was nothing.
Even critor was surprised to see me active when i released "Rainbow Dash Cloud Attack" for TI-Nspire CX.
People were suspecting that Gpsp killed the Nspire scene but it is obviously false since there was some interest in PocketSNES,
it's just that developer competant enough :
- Do not have a Linux environment. (which is much easier to work with for devs)
- Or they thought it was an impossible task and thus, they did not attempted it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 29, 2016, 12:20:31 am
Hm that sucks that dev tools held you and other people back >.<.

As for the Nspire scene inactivity, there are many factors, @gameblabla , although some might be arguable:

-TI's constant actions against Ndless (alienated many Nspire dev)
-The TI-Planet vs Omnimaga conflict in 2014 (many Nspire devs left Omni afterwards and Nspire news cross-posting ended)
-Omnimaga vs CodeWalrus split (many people were unaware of CW existence until much later)
-Console emulator ports (someone will be less motivated to make an Illusiat or Zelda clone if it's gonna compete head-to-head with Chrono Trigger and A Link to the Past)
-The TI-84 Plus C Silver Edition and TI-84 Plus CE (The Nspire CX market share probably diminished after those calcs came out)
-The last two points you mentioned about Ndless environment setup difficulties

However, from what I notice, people are still interested in making Nspire programs nowadays. Not as much as when Ndless first came out, but there's WalrusRPG, your game ports, etc.I don't think console emulators killed the scene. They just made people less inclined to make brand new games.

I personally enjoy your releases when I get time to try them. They would definitively get more exposure if you uploaded copies on ticalc.org, though (somee are there already, but not all, IIRC).

Keep up the good work :walrii:
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: Vogtinator on June 29, 2016, 04:27:17 am
Quote
I remember that using the function exit sometimes crashes the nspire for no good reason and unfortunely, Gpsp seems to rely on it...
Code that behaves correctly should not crash the nspire. Most likely there's a buffer overflow somewhere or the emulator doesn't reset the hardware to the correct state.

Quote
It does seem to run a little faster than before though.
Yeah, newlib is much more optimized than the OS itself and GCC 6 has some more aggressive optimizations, although those may cause crashes non not quite standard compliant code.
See: "-fno-delete-null-pointer-checks", "-fno-lifetime-dse"
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 29, 2016, 07:16:00 am
I finally switched the input code from SDL to native for Temper.
As a result, it is 1.5x faster than the previous version, which is nice, especially since it was pretty slow...
You can downlaod it here, as usual. (https://codewalr.us/index.php?topic=670.msg40210#msg40210)

Code that behaves correctly should not crash the nspire. Most likely there's a buffer overflow somewhere or the emulator doesn't reset the hardware to the correct state.
It does look a lot like it is not reseting the hardware properly.
Why this used to work before but not now is beyond me but like you said, this may be due to agressive optimisations.

Quote
They would definitively get more exposure if you uploaded copies on ticalc.org, though (somee are there already, but not all, IIRC).
Thanks for the suggestion, i have updated some of my emulators and added some new ones. (Temper and SMS_Plus, not Pom1 cause it's pretty bad)

Thank you guys for your support.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on June 30, 2016, 07:59:57 pm
Yay! On a side note I just remembered after re-reading my suggestion above that a ticalc.org file upload is a requirement to participate to the POTY and make front page news there, so it's another good reason to upliad your files there too. :P

 And good luck fixing the issues mentioned above. X.x
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 17, 2016, 12:12:11 am
I'm back with another Artur Rojek game, Homing Fever.
Avoid the missiles coming at your ship and survive as long as possible !

(https://github.com/gameblabla/homingfever/raw/master/hover.png)

Requires Ndless 3.1+, compatible with CR4.
Download is below, in the attachments.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 17, 2016, 12:46:04 am
Interesting. It looks like Asteroids on the VCS but without the asteroids.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 17, 2016, 03:33:37 am
Interesting. It looks like Asteroids on the VCS but without the asteroids.
Except you can't even shoot at the missiles, unlike steroids :p

EDIT: Critor reported some errors with the game so i had to fix that.
I patched the game and uploaded a new tns.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 17, 2016, 07:27:24 pm
Yeah I meant the graphical style.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 24, 2016, 07:00:02 pm
Here's REMiniscene, a port of Flashback for the TI Nspire CX.
It runs decently enough on a non-overclock Ti-Nspire CX.

(https://tiplanet.org/modules/archives/captures/1474742751flashback_nsp.png)

You need to own either the DOS port or the Amiga one.
Then place your games files in a data folder and add the ".tns" extension to all your game files.
Place rs.tns next to the folder and run it.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 24, 2016, 08:32:44 pm
That looks cool. Thanks for the port :)

Wasn't there a crappy SNES version, btw?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 24, 2016, 10:05:14 pm
That looks cool. Thanks for the port :)
Wasn't there a crappy SNES version, btw?
Yeah, it does. (don't know how crappy it is though...)
In fact, this game was ported to lots of platforms at the time, even the CDi !

I think in-game, the SNES port runs faster than the native port but i need to test this if that's the case.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 25, 2016, 01:33:08 pm
I have significantly improved the game's speed by doing little changes.
I only had to remove the zlib dependency (turn off a define) and remove a condition inside the drawing and the game runs
much faster now than it used to.
I can now safely say it runs faster than the SNES port :p
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 25, 2016, 10:20:05 pm
Great! I still need to try it, since I didn't have much time to do so lately.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 28, 2016, 09:49:03 am
Here's a PSX emulator, PCSX4All, now for the Ti Nspire CX !

(https://tiplanet.org/modules/archives/captures/1475055567psx_emu.png)

I have switched the video rendering to n2dlib, stripped down all of its dependencies...
but it is still pretty slow.
That's mainly because it doesn't have a recompiler compatible with the nspire
due to sys_flushcaches only available on Linux systems...
For now, it's using the slow-ass interpreter and it's crashing on a lot of games...
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 28, 2016, 12:23:15 pm
Wait what? O.O If the speed isn't that bad (for example, if some games are actually playable) then this is sorcery. O.O I always thought that PSX/N64 emulation required a 800+ MHz processor. :P Nice though
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 28, 2016, 08:50:11 pm
Well, critor told me most games would crash, even homebrews...
I have no idea why this happens though, even after fixing some other bugs.

I guess GCC doesn't make good arm code for the nspire, because it is working on my PC with the same codebase.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 29, 2016, 02:07:47 am
Aw that's a shame. Maybe lack of RAM or disk space? What is the smallest licensed PS1 game ever made? Music 2000 is 323 MB so games aren't necessarily tied to the size of a CD, but I always thought that PS1 games were at least 100+ MB large due to all cinematics.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 30, 2016, 10:01:57 am
Yeah, the PS1 emulator was more of a POC than anything else : i never intended to make it fullspeed or anything.

I gave TinyGL a try on my nspire and it turned out it could be used with n2DLib.
I have compiled some 3D examples using TinyGL.

(https://tiplanet.org/modules/archives/captures/1475232315gears.png)

https://github.com/gameblabla/tinygl_nspire/raw/master/triangle.tns (https://github.com/gameblabla/tinygl_nspire/raw/master/triangle.tns)
https://github.com/gameblabla/tinygl_nspire/raw/master/gears.tns (https://github.com/gameblabla/tinygl_nspire/raw/master/gears.tns)

Triangle works fast but Gears (yes, the benchmark app) works pretty slowly : like 5 FPS or something.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 30, 2016, 04:13:11 pm
Interesting. By the way I am curious about how fast a port of ClosedGL or the 68K voxel engine would run? I don't know if the license would allow that, though, but those w ere for the TI-89
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on September 30, 2016, 10:31:15 pm
Interesting. By the way I am curious about how fast a port of ClosedGL or the 68K voxel engine would run? I don't know if the license would allow that, though, but those w ere for the TI-89
ClosedGL is proprietary : it's missing cgl.c, the implementation library and he only provides a lib file, with no source code.
It can't be ported to any platforms.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on September 30, 2016, 11:54:20 pm
Dang. For some reasons, back in the days many TI community members had the bad habit of releasing everything closed-source or worse, not releasing anything at all and letting their closed-source projects rot on old, failing hard drives. >.<
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on November 20, 2016, 05:16:11 am
So I fixed the download link for the PC version of Opossum Massage Simulator in @gameblabla post because for some reasons he likes to give me extra work by changing the Github download URL for no reason :P
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on December 13, 2016, 12:33:30 am
Virtual Jaguar for the Ti Nspire CX.
(https://github.com/gameblabla/virtualjaguar-nspire/raw/master/screenies/wolf-jag-nsp.jpg)

It requires the latest Ndless version for it to work so better update your installation.
Not all games work and when they do, it's very slow.
Wolfenstein 3D and Cybermorph are the fastest games running on vj.
Bubsy also work but only on the no-dsp version.
Atari Karts works but it is very slow, don't attempt to run it lol.

You can download the tns files here :
https://github.com/gameblabla/virtualjaguar-nspire/raw/master/virtualjaguar-nspire.zip (https://github.com/gameblabla/virtualjaguar-nspire/raw/master/virtualjaguar-nspire.zip)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on December 13, 2016, 02:17:51 am
How much slower do the games run? For example, at how many FPS would Wolfeinstein run? This is amazing work, though, @gameblabla . I'm glad to see more platforms available for emulation on the Nspire :3=
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on December 13, 2016, 04:27:32 pm
Quote
How much slower do the games run? For example, at how many FPS would Wolfeinstein run?
Here's how the Atari Jaguar version of Worms works on it.
https://www.youtube.com/watch?v=k4iP9BUpJ4M (https://www.youtube.com/watch?v=k4iP9BUpJ4M)

And to answer your questions, Wolfenstein 3D on vj runs much more slowly than its PC port.
Like 1~2 FPS.
Worms runs at 2~4 FPS, it's the fastest game running on vj.

I can still optimise it tho, i have not played all of my cards yet.
It's not using n2DLib right now due to some issues with color masking.
When this issue is solved, expect much higher framerates.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on December 13, 2016, 11:00:59 pm
Hm I see. Too bad the speed can't get faster, but again the Jaguar hardware is probably not the easiest to emulate, especially not on a calculator. Good job getting this to work so far :3=
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: matrefeytontias on December 14, 2016, 12:06:08 am
Nice job on all of those. Again, I'm always happy to see when n2DLib comes in handy to someone.

What's the issue with color masking again ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on December 14, 2016, 02:46:37 pm
Nice job on all of those. Again, I'm always happy to see when n2DLib comes in handy to someone.
What's the issue with color masking again ?
The problem is that there is no easy way to set a color mask with n2DLib.
(without manually attacking the buffer)

Virtual Jaguar uses a color mask to make the framebuffer look right.
Without it, it looks wrong;
It's implemented as such in vj :
Code: [Select]
surface = SDL_CreateRGBSurface(SDL_SWSURFACE, width, height, 16, 0x7C00, 0x03E0, 0x001F, 0);
How could i set a color mask in the buffer ? Any ideas ?
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: matrefeytontias on December 14, 2016, 07:28:13 pm
You indeed have to touch the image buffer, which isn't a big deal, really. It's basically the same as setting the member of the struct, just with no name on it :P This would work for you.

Code: [Select]
inline void setColorKey(unsigned short *src, unsigned short key)
{
    src[2] = key;
}

EDIT : oh wait, you meant a color mask, not a color key. Well that's a bit hard indeed. I didn't have any plan for that since the TI-Nspire screen is R5G6B5, so that would require extra conversion which would be pretty horribly slow anyway ... I think the best solution for you is to write your own updateScreen() based off the existing one. Instead of simply copying the bits, just mask the data using some R5G6B5 to and from RGB transformations (just a couple of bitshifts). But if it is on a per-image basis, then yeah I'm not really sure how to do that except by re-filling the same buffer with the new data (which won't be displayed correctly on-screen by the normal updateScreen() anyway).
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on December 14, 2016, 07:30:11 pm
You indeed have to touch the image buffer, which isn't a big deal, really. It's basically the same as setting the member of the struct, just with no name on it :P This would work for you.
Code: [Select]
inline void setColorKey(unsigned short *src, unsigned short key)
{
    src[2] = key;
}
Well, thank you for the function. I did without it tho, it turns out it was just expecting the buffer to be 15-bits so i converted it to 16-bits.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 04, 2017, 07:56:30 pm
Here's Alterego, a NES homebrew game, ported to the TI Nspire thanks to the bitbox  port done by Makapuf.
(https://github.com/gameblabla/bitbox-alterego-nspire/raw/master/bitbox-alterego-game/screencast.gif)

It's not the NES game running on an emulator, it's the game running natively (through a bitbox wrapper interface).
https://github.com/gameblabla/bitbox-alterego-nspire/raw/master/bitbox-alterego-game/alterego.tns (https://github.com/gameblabla/bitbox-alterego-nspire/raw/master/bitbox-alterego-game/alterego.tns)
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 09, 2017, 04:17:06 pm
That looks great and fun! Good job gameblabla on the port. :3=
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on April 09, 2017, 06:19:49 pm
That looks great and fun! Good job gameblabla on the port. :3=
Thx dude :3
I could make it run faster but i didn't want to break compatibility with CR4+ hardware revisions so i didn't.
I need to work on a better n2Dlib that uses the lcd_blit API properly. (Pom1 only supports it partially)

Critor wrote about it here :
https://tiplanet.org/forum/viewtopic.php?t=19820&p=215232#p215232 (https://tiplanet.org/forum/viewtopic.php?t=19820&p=215232#p215232)

Thanks as always critor, even though interest in TI-Nspire software has significantly dropped since a few years ago.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on April 10, 2017, 01:06:55 pm
Thanks as always critor
You're welcome. :)

even though interest in TI-Nspire software has significantly dropped since a few years ago.
I'd rather say interest in TI-Nspire games.
The situation is different on other calculators though, like the TI-84 Plus CE.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: xlibman on April 10, 2017, 04:52:42 pm
Yeah I think the constant battle between TI vs Ndless didn't help. The same thing happened with the constant battle between the 68K community vs a certain 68K programmer that shall remain unnamed. It only take one person or organization to alienate everyone else.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 05, 2018, 11:11:07 pm
Erm..;back somewhat.
I have updated Oswan : it is now compatible with all TI-Nspires : greyscale, CX, CR-4 hardware+ etc...
On firebird; it seems to run somewhat faster than it did on real hardware but i was not able to confirm this yet.
As usual; first post for download.

Let me know if this works properly on your side
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on June 12, 2018, 08:14:39 pm
After improving my GCW0 port, porting it to the RS-97, i managed to port it to the Nspire too.
A lot of code got stripped : Menu, sound, joystick, config files etc... That allowed me to push more aggressive optimisations than it would allow by default such as decreased size, no rtti, no exceptions etc... A lot of work :P

It works on Firebird so it should work on real hardware too. Sadly i don't have my Nspire with me rn so please try it on your side if possible.
Of  course, you do need the outrun rom files. Extract them in a folder called "roms" and put that tns file relative to that folder.

(https://tiplanet.org/modules/archives/captures/1528833677cannonball.png)

https://tiplanet.org/forum/archives_voir.php?id=1569330 (https://tiplanet.org/forum/archives_voir.php?id=1569330)

It's somewhat slow so overc*** your calc if possible.
I admit i haven't tried to switch it to n2DLib yet. That'll come with time i suppose.
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: critor on June 15, 2018, 06:32:36 pm
Awesome ! :D
(https://tiplanet.org/forum/gallery/image.php?mode=thumbnail&album_id=63&image_id=9617) (https://tiplanet.org/forum/gallery/image.php?album_id=63&image_id=9617)

Let's go to the beach :  8)
http://www.youtube.com/watch?v=Cm8EatAS4CI
Title: Re: SDL/n2DLib ports for TI Nspire
Post by: gameblabla on July 28, 2018, 01:40:46 pm
Alright guys, some good stuff.I've updated Oswan with a new autoframeskip thing. I admit, i originally did that because the RS-97 could not run some games fullspeed without it. But now you can.As usual, grab the latest version of Oswan for the TI-Nspire CX (and now monochrome too) here :https://github.com/gameblabla/oswan/raw/master/release/oswan.tns (https://github.com/gameblabla/oswan/raw/master/release/oswan.tns)

I've also improved the RoQPlayer ! The old version was based on idroq and that had a fair amount of issues.I've rebased my port on DreamRoQ, which can directly output to RGB565 and can also output sound to a file.This version is much smaller and should run faster too, grab it here :
https://tiplanet.org/forum/archives_voir.php?id=296214 (https://tiplanet.org/forum/archives_voir.php?id=296214)
Enjoy