MrGonker Posted May 23, 2021 Share Posted May 23, 2021 Hello, I am using my new nanopeb on my 4A and have been copying all my tape games in basic to disk, however when I try and run some games like apex sorcerers castle and virgin funpak game starship super nova I get an out of memory in line.... . I know it’s to do with the arrays in the game and the memory usage for the disk system but is there a way to get these games working without having to remove the nanopeb as it’s so much easier to have all my tape games as disks. Thanks for any help. 1 Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted May 23, 2021 Share Posted May 23, 2021 Hello, I am using my new nanopeb on my 4A and have been copying all my tape games in basic to disk, however when I try and run some games like apex sorcerers castle and virgin funpak game starship super nova I get an out of memory in line.... . I know it’s to do with the arrays in the game and the memory usage for the disk system but is there a way to get these games working without having to remove the nanopeb as it’s so much easier to have all my tape games as disks. Thanks for any help. Try call files(1)Sent from my LM-V600 using Tapatalk Quote Link to comment Share on other sites More sharing options...
ti99iuc Posted May 23, 2021 Share Posted May 23, 2021 (edited) Hello MrGonker! I am also discovered that it is almost impossible to load some programs if not in BASIC console without expansion. Sometime I can solve with CALL FILES (1), NEW and then load the game as also Greg suggested, but for the most I can just use emulator like Classic99 and CALL FILES (0). If you can create also the .WAV file, you could also load it in MESS/MAME Emulator in a BASIC emulation without expansions mounted, I discovered that if you will save a new WAV file from MESS it can be loaded successfully into CLASSIC99 using CALL FILES (0) option and then you can save it digitally as FIAD file. I am using this method lately for some of the tapes. The saved MESS/MAME .WAV file is perfectly compatible with the Classic99 emulator. But I still haven't found how to load on the real TI99 from floppy disk or with disk connected. Another method to convert long programs into digital format, I use to load the program on a TI99 in stock configuration and the recorder connected. Once loaded the game I am deleting some of the first lines (20 lines at least) and save the game into a new empty cassette tape as PART1. Then I load again the original program and once loaded deleting the final 20 lines of the program and save it into a new empty cassette tape as Part2. Once done, I load the Part1 and the Part2 with Disk controller connected and save them as FIAD. On the PC Using TIDIR I will merge the listing of the two parts into one only to have the complete game again. ? a bit crazy but works ? Maybe some features of the @RXB also could help on the real hardware, Rich? Edited May 23, 2021 by ti99iuc 3 Quote Link to comment Share on other sites More sharing options...
+arcadeshopper Posted May 24, 2021 Share Posted May 24, 2021 RXB will load any ti basic PROGRAM and let you use 32k expansionSent from my LM-V600 using Tapatalk 1 Quote Link to comment Share on other sites More sharing options...
+Ksarul Posted May 24, 2021 Share Posted May 24, 2021 You could also try to load the program from disk with Winkler's Extended BASIC 3, as it sends everything directly to the memory expansion without the detour through VDP RAM. Then you can try to save it with a new name and see if it saves in INT/VAR 254 format. RXB may be able to perform similar magic, but it does still use the console load routines for PROGRAM files, so it may have the same CALL FILES issues Extended BASIC has. Note that RXB can save any PROGRAM file in INT/VAR 254 format once you do get it loaded though. I suggested XB3 as a test case here because of the different way it uses system memory. 3 Quote Link to comment Share on other sites More sharing options...
MrGonker Posted May 24, 2021 Author Share Posted May 24, 2021 Thank you all for the help, I will try call files(1). I have a finalgrom and will see if the other extended basics are on my sd card, I used the finalgrom file off the WHTECH site. I always just go straight for v1.10 extended basic and have never used any other type. Would be nice to not have to keep removing the nanopeb as it’s such a tight fit on the expansion port and don’t want to break the connector. Quote Link to comment Share on other sites More sharing options...
Tursi Posted May 24, 2021 Share Posted May 24, 2021 Since the disk controller reserves some RAM, it is always possible to find a TI BASIC program that won't fit in just TI BASIC on a disk system. CALL FILES(1) reduces the disk memory as much as possible. CALL FILES(0) is a Classic99-specific thing that I added because you can't (and don't need to) turn off the disk controller in that emulator. The difference in free VRAM from CALL FILES(1) and CALL FILES(0) is 1052 bytes - just over 1k - so if you can reduce the size of the TI BASIC program that's the most compatible approach. (CALL FILES(3), the default, is another 1036 bytes used). Most TI BASIC programs can be optimized to save that much memory. 3 Quote Link to comment Share on other sites More sharing options...
+OLD CS1 Posted May 24, 2021 Share Posted May 24, 2021 Per the PHP-1240 manual, the base memory usage for the controller is 534 bytes, plus 518 bytes per file buffer. 1 Quote Link to comment Share on other sites More sharing options...
+Lee Stewart Posted May 25, 2021 Share Posted May 25, 2021 1 hour ago, OLD CS1 said: Per the PHP-1240 manual, the base memory usage for the controller is 534 bytes, plus 518 bytes per file buffer. Kinda what @Tursi said (in a roundabout way, I suppose). Going from CALL FILES(1) to CALL FILES(3) adds 2 file buffers of 518 bytes each for the additional 1036 bytes. The initial 1052 bytes consumed by CALL FILES(1) is, indeed, 534 + 518 bytes. Well, now, I guess that horse is well and truly dead. ...lee 1 1 Quote Link to comment Share on other sites More sharing options...
+OLD CS1 Posted May 25, 2021 Share Posted May 25, 2021 16 minutes ago, Lee Stewart said: Kinda what @Tursi said (in a roundabout way, I suppose). Going from CALL FILES(1) to CALL FILES(3) adds 2 file buffers of 518 bytes each for the additional 1036 bytes. The initial 1052 bytes consumed by CALL FILES(1) is, indeed, 534 + 518 bytes. Well, now, I guess that horse is well and truly dead. Not until it is well-basted and filleted! I saw @Tursi's post as I was typing, but I demanded absolute pedantry with specificity I had to take advantage of Classic99's CALL FILES(0) to get one of my programs to load because it needed that last 1k of VDP space to run. The caveat is I had to load from CS1 via a good wav copy of the original cassette, which took a good amount of work. 1 3 Quote Link to comment Share on other sites More sharing options...
Tursi Posted May 25, 2021 Share Posted May 25, 2021 I just used the debugger and did the math, I didn't worry about what the memory was being used for since it wasn't applicable to the issue. Setting top of VRAM to >37D7 (3 files) Setting top of VRAM to >3BE3 (1 files) Setting top of VRAM to >3FFF (CS1 MODE) Now the details of WHY those bytes are used are saved for posterity, so that's also good! 4 Quote Link to comment Share on other sites More sharing options...
Ed in SoDak Posted May 26, 2021 Share Posted May 26, 2021 And that, as they say, is that! 1 4 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.