Jump to content
IGNORED

[WANTED] 99'Vaders in CTG or BIN format


BobAtari

Recommended Posts

This old clone of Astro Invader by Not Polyoptics is just about the only TI game I now want to play that I haven't managed to find a usable version of. I assume a good dump exists somewhere as there are high-quality screenshots around, eg here:

 

https://gamesdb.launchbox-app.com/games/images/156339

 

It appeared on a compilation of Stainless Software games here:

 

http://shawweb.myzen.co.uk/stephen/pc99dsk.htm#stainless

 

but that's in DSK format which is no good to me, and according to this can't be converted:

 

 

Can anyone help?

Edited by BobAtari
Link to comment
Share on other sites

39 minutes ago, BobAtari said:

This old clone of Astro Invader by Not Polyoptics is just about the only TI game I now want to play that I haven't managed to find a usable version of. I assume a good dump exists somewhere as there are high-quality screenshots around, eg here:

 

https://gamesdb.launchbox-app.com/games/images/156339

 

It appeared on a compilation of Stainless Software games here:

 

http://shawweb.myzen.co.uk/stephen/pc99dsk.htm#stainless

 

but that's in DSK format which is no good to me, and according to this can't be converted:

 

 

Can anyone help?

 

In attachment the .bin for FinalGROM99. I've tried to change the source code to not use the float math, but there were some bugs, so I've not released the compiled version. Too bad, since it was a very good game.

 

 

[TI BASIC] 99 Vaders (1983)(Not Polyoptics)[Converted by TMOP]_8.bin

  • Like 4
Link to comment
Share on other sites

37 minutes ago, .mad. said:

unfortunately, this cart does not work in Classic99 or MAME.

you get memory full in 100.

 

the disk version can be loaded with CALL FILES(0).

is there a similar config you can use with a cart to get it working?.

uhhmm, the .bin was generated with CALL FILES(0) from disk version. Not sure why is not working anymore on Classic99. 😞 

 

Link to comment
Share on other sites

51 minutes ago, .mad. said:

unfortunately, this cart does not work in Classic99 or MAME.

you get memory full in 100.

 

the disk version can be loaded with CALL FILES(0).

is there a similar config you can use with a cart to get it working?.

ok, fixed versions in attachment! ;-) 

 

 

[TI BASIC] 99 Vaders (1983)(Not Polyoptics)[Converted by TMOP].rpk [TI BASIC] 99 Vaders (1983)(Not Polyoptics)[Converted by TMOP]_8.bin

  • Like 4
  • Thanks 1
Link to comment
Share on other sites

  • 7 months later...

Hey BobAtari, 

 

Yes it is a slow game, but remember, my brother and I designed and programmed this game in BASIC, so as far as that goes, it is lightning speed for BASIC, especially TI BASIC.

 

I do have a cassette copy (somewhere).

 

Tom D.

  • Like 8
Link to comment
Share on other sites

On 12/27/2022 at 11:05 AM, blackbox said:

99Vaders bin can be found in the basic-bin none-compiled pack

See the post dated 14th August 2022 in the thread
https://forums.atariage.com/topic/311250-ti-basicti-extended-basic-games-that-are-worth-to-be-compiled/page/32/

It cannot be compiled but has been converted - enjoy.
s

Hi blackbox, do you know the reason the program can't be compiled? 

Link to comment
Share on other sites

On 12/27/2022 at 9:26 AM, tmop69 said:

RXB 2023 has a working CALL FILES(0) 

I do not know of any other XB that has CALL FILES(0)

Link to comment
Share on other sites

1 hour ago, 99V said:

Hi blackbox, do you know the reason the program can't be compiled? 

The compiler is not able to compile floating point math, only integers. So, if the code has explicit floating point operations (that means using something like: X=X+1.5) or there are math operations (e.g. a division) whose result can generate floating point numbers, the compiler cannot compile/handle them correctly.

 

In the specific case of 99Vaders, there are floating point operations for moving the aliens. I've tried a "quick" conversion of the unsupported code (basically you need to rewrite it ensuring that it cannot generate any floats), but the final compiled code was not working 100% correctly, so this game was moved in the "check it later" folder.

 

I've compiled more than 600+ games for the TI, but my impressions was that, at some point, people are barely downloading them and so I've lost all the interest in the project. And finally my "check it later" folder was moved into the "trashcan"... It was a pity, since the extra speed added by the compilation process really improved the gameplay of 99Vaders.

 

  • Like 1
  • Sad 2
Link to comment
Share on other sites

13 minutes ago, tmop69 said:

I've compiled more than 600+ games for the TI, but my impressions was that, at some point, people are barely downloading them and so I've lost all the interest in the project.

You either under-value your efforts or are fishing for acknowledgement.  I would rather believe the former.  Not everyone or everything is immediately famous.  E.g. "Rocky Horror Picture Show," "Babylon 5," Galileo, Jesus Christ.  We are not YouTubers or "influencers," we do things because we want to, because we like to, and not for clicks or clout.

  • Like 5
Link to comment
Share on other sites

41 minutes ago, RXB said:

RXB 2023 has a working CALL FILES(0) 

I do not know of any other XB that has CALL FILES(0)

yes, but the problem was another. We wanted a cart of the TI Basic program, so the only possibility was to use plain TI BASIC, to add a breakpoint in Classic99 and to dump the VDP into a cart with the provided tool (Debugger / make / Save memory as program). I remember that in the second attempt I removed a comment (in addition with CALL FILES(0) ) to gain some few bytes and the cart was then working fine, without any memory full error.

 

 

  • Like 2
Link to comment
Share on other sites

@tmop69, please continue to compile. It is appreciated. If I can get a list of the program lines at some point I can take a look at it. My brother did some weird stuff with it. We even figured out a way to protect the basic program from being viewed and tinkered with but that is top secret information. 

  • Like 4
Link to comment
Share on other sites

48 minutes ago, OLD CS1 said:

You either under-value your efforts or are fishing for acknowledgement.  I would rather believe the former.  Not everyone or everything is immediately famous.  E.g. "Rocky Horror Picture Show," "Babylon 5," Galileo, Jesus Christ.  We are not YouTubers or "influencers," we do things because we want to, because we like to, and not for clicks or clout.

I was surely expecting (and asked...) some help in testing the compiled games, but except few people, there was practically zero support. If you look at the Excel file with the list of the games, there is a column "Fully Tested", to check the status. 99% of games were tested by me and/or @ti99iuc. Some of the games required a lot of iterations to fix all the problems and I can ensure that it's not so fun to test a game to fix the bugs. Since it was all done for fun and not for money or glory, if there is no more fun it's better to stop.

Edited by tmop69
  • Like 1
  • Sad 1
Link to comment
Share on other sites

9 minutes ago, tmop69 said:

Some of the games required a lot of iterations to fix all the problems and I can ensure that it's not so fun to test a game to fix the bugs. Since it was all done for fun and not for money or glory, if there is no more fun it's better to stop.

This is a different and much more sympathetic story.  This would be a time consuming process and can suck the fun right out of it.  I am assuming the tested stuff is what made it into the Gamebase.  I, for one, thought it was pretty cool to see the amount of work you were putting into it and results which followed.

Link to comment
Share on other sites

1 hour ago, tmop69 said:

yes, but the problem was another. We wanted a cart of the TI Basic program, so the only possibility was to use plain TI BASIC, to add a breakpoint in Classic99 and to dump the VDP into a cart with the provided tool (Debugger / make / Save memory as program). I remember that in the second attempt I removed a comment (in addition with CALL FILES(0) ) to gain some few bytes and the cart was then working fine, without any memory full error.

 

 

My version of CALL FILES(0) is written in GPL so executes before any ROM version in the Disk Controller.

I also added a updated section so you can actually use CALL FILES(15) and it works too.

Again written in GPL so the DSR one is never used.

You could put my GPL version in TI Basic GRAM on Classic99 to test it.

*********************************************************** 
* CALL FILES(number)  0 to 15                             *
***********************************************************
SFILES DATA SSIZE
       STRI 'FILES'       *   FILES
       DATA $+2
       CALL COMB          *   (
       CALL CLSALL        *   Close all open files
       CALL RXBFIL        *   Set files
       BR   RXBNEW        *   Go do a NEW
RXBFIL CALL SUBLP3        *   Get Files value
       DCZ  @FAC          *   Zero?
       BS   RXBF0         *   Yes, RXB CALL FILES(0)
       DCHE 16,@FAC       *   16 or more to high
       BS   ERRBV         *   Yes, BAD VALUE error
       CEQ  RPARZ,@CHAT   *   )?
       BR   ERRSYN        *   SYNTAX ERROR 
       XML  PGMCHR        *   Skip )
       DCLR @FAC2         *   Clear         
       ST   @FAC1,@FAC2   *   Load file value
       DST  >0116,V@VROAZ *   Set files buffer space
       DCHE 256,@PAD      *   
       BR   DSRDSS        *
       ADD  >10,@VROAZ+1  *
DSRDSS DST  VROAZ,@FAC12  *
       CALL LINK          *
       BYTE >0A           *
       ST   @ERCODE,@PAD2 *
       SRL  4,@FAC6       *
       CZ   @FAC6         *
       BR   ERRFE         *
       CEQ  >20,@PAD2     *
       BS   ERRFE         *
       RTN                *
RXBF0  CEQ  RPARZ,@CHAT   * )?
       BR   ERRSYN        * SYNTAX ERROR 
       XML  PGMCHR        * Skip )
       DST  >3CEF,@>8370  * Set FILE(0) VDP Highest address 
       RTN                * Return

You can find the entire thing is RXB 2023 as I include the source code for GPL and Assembly.

Link to comment
Share on other sites

4 minutes ago, RXB said:

My version of CALL FILES(0) is written in GPL so executes before any ROM version in the Disk Controller.

I also added a updated section so you can actually use CALL FILES(15) and it works too.

Again written in GPL so the DSR one is never used.

You could put my GPL version in TI Basic GRAM on Classic99 to test it.

*********************************************************** 
* CALL FILES(number)  0 to 15                             *
***********************************************************
SFILES DATA SSIZE
       STRI 'FILES'       *   FILES
       DATA $+2
       CALL COMB          *   (
       CALL CLSALL        *   Close all open files
       CALL RXBFIL        *   Set files
       BR   RXBNEW        *   Go do a NEW
RXBFIL CALL SUBLP3        *   Get Files value
       DCZ  @FAC          *   Zero?
       BS   RXBF0         *   Yes, RXB CALL FILES(0)
       DCHE 16,@FAC       *   16 or more to high
       BS   ERRBV         *   Yes, BAD VALUE error
       CEQ  RPARZ,@CHAT   *   )?
       BR   ERRSYN        *   SYNTAX ERROR 
       XML  PGMCHR        *   Skip )
       DCLR @FAC2         *   Clear         
       ST   @FAC1,@FAC2   *   Load file value
       DST  >0116,V@VROAZ *   Set files buffer space
       DCHE 256,@PAD      *   
       BR   DSRDSS        *
       ADD  >10,@VROAZ+1  *
DSRDSS DST  VROAZ,@FAC12  *
       CALL LINK          *
       BYTE >0A           *
       ST   @ERCODE,@PAD2 *
       SRL  4,@FAC6       *
       CZ   @FAC6         *
       BR   ERRFE         *
       CEQ  >20,@PAD2     *
       BS   ERRFE         *
       RTN                *
RXBF0  CEQ  RPARZ,@CHAT   * )?
       BR   ERRSYN        * SYNTAX ERROR 
       XML  PGMCHR        * Skip )
       DST  >3CEF,@>8370  * Set FILE(0) VDP Highest address 
       RTN                * Return

You can find the entire thing is RXB 2023 as I include the source code for GPL and Assembly.

 

Ok, but please, read my answer! The problem was already solved, and it was necessary to use the plain TI BASIC in Classic 99 to use the  Debugger / Make / Save memory as program to generate the SSS cart from VDP. This feature of Classic99 ONLY WORKS for TI BASIC, no XB, RXB, etc. Is it clear?

 

 

Link to comment
Share on other sites

2 hours ago, 99V said:

@tmop69, please continue to compile. It is appreciated. If I can get a list of the program lines at some point I can take a look at it. My brother did some weird stuff with it. We even figured out a way to protect the basic program from being viewed and tinkered with but that is top secret information. 

I do not have anymore my old code, anyway, to start, all these lines have to be rewritten only using integers:


176 IF RND-FALLING>.9 THEN 564

 

182 Y=Y+SGN(K-2.5)

 

216 UN=(Y-6)/2+(Y>16)*1.5
218 IF UN=INT(UN)THEN 226

 

294 CALL HCHAR(24,(FILL+FILL-(FILL>4)*3+6)-INT(SPLAT/2+.5),145,INT(SPLAT/2+.5)*2+1)


298 IF ABS(Y-(FILL+FILL-(FILL>4)*3+6))>INT(SPLAT/2+.5)THEN 308


310 CALL HCHAR(24,(FILL+FILL-(FILL>4)*3+6)-INT(SPLAT/2+.5),32,INT(SPLAT/2+.5)*2+1)


346 IF VAL(HS$)/10>=SC THEN 398

 

466 Y=Y+SGN(K-2.5)

 

580 Y=Y+SGN(K-2.5)


Since are used to feed HCHAR, VCHAR, GCHAR calls, that work with integer values, it's technically possible to rewrite the code. Note that these subs, for ROW and COLS parameters, if they receive a float value, they are rounding it to the lower or higher integer. So, for example, if you are passing 10.4 it will use 10, while if you pass 10.6 it will use 11.

 

The good thing to speed up the process of conversion is that you do not need to write the code in plain TI BASIC anymore, since the target will be to have a compiled code. So, now, yes, use RXB (@RXB are you happy now?) to load the program, run and debug it, since it allows to run TI BASIC code that uses ASCII sets 15 and 16.

You can also add XB code to the original one, since it is supported by the compiler. You can also count of the memory expansion, you are no more limited to the 16K of TI BASIC.

 

Once done I'll take care of adding the appropriate delay, fix the call sounds, etc. and create the final compiled cart. ;-) 

 

  • Like 4
Link to comment
Share on other sites

2 hours ago, tmop69 said:

 

Ok, but please, read my answer! The problem was already solved, and it was necessary to use the plain TI BASIC in Classic 99 to use the  Debugger / Make / Save memory as program to generate the SSS cart from VDP. This feature of Classic99 ONLY WORKS for TI BASIC, no XB, RXB, etc. Is it clear?

 

 

LOL first off I wrote Editor Assembly TI Basic support into TI Basic GRAM 4K space.

There is plenty of space left for the CALL FILES routine to. 

Also once loaded it is way less complicated than what you are doing with 10 times more features.

This is all GPL so why you are confused that XB and TI Basic are not all written in GPL is kind of funny,

Is it clear?

Link to comment
Share on other sites

I would need to see the whole program and then I can change it all. I still remember what some of this means from 40 years ago. We increased the size of the explosion every round so "splat" is the size of the explosion. 

  • Like 1
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...