Jump to content
fabrice montupet

TI994W emulator problem

Recommended Posts

Since some days, I play with Extended Basic & XB256. I noticed that when I use CALL SOUND, the emulator hangs. However the sound works fine with all GROM /ROM or E/A games images.

My PC configuration: Intel Core I5,  32GB RAM, SSD 256GB, Realtek High Definition Audio (driver v6.0.1.8335) under MS-Windows 10 21H1.

Someone has already encountered a similar problem?

 

Share this post


Link to post
Share on other sites

I prefer Classic99 and I can run up to 8 at same time with no speed cost.

Matter of fact I have had 8 Classic99 XB programs using the clock routine running in background for 6 hours while I am playing World of Tanks at same time.

I used this to time some new routines in RXB vs XB vs XB 2.7 vs TI Basic vs Super XB vs XB3 vs older versions of RXB.

 

Do not use TI994W anymore since Classic99 does not have any issues and I can load my new rewritten carts instantly.

Share this post


Link to post
Share on other sites

Thank you for your answer. But I usually like to understand problems that I encounter and, if possible, to find the solution. So, until the problem has not been considered as unsolvable, I keep TI994W. For my needs I always will use XB256.

  • Like 4

Share this post


Link to post
Share on other sites
On 9/23/2021 at 9:00 PM, fabrice montupet said:

Since some days, I play with Extended Basic & XB256. I noticed that when I use CALL SOUND, the emulator hangs. However the sound works fine with all GROM /ROM or E/A games images.

My PC configuration: Intel Core I5,  32GB RAM, SSD 256GB, Realtek High Definition Audio (driver v6.0.1.8335) under MS-Windows 10 21H1.

Someone has already encountered a similar problem?

 

I have never used XB256 myself, but I've justr read it is a game engine and it can generate some form of sound table.

Are you using this Fabrice?

If so, what does the sound table look like?

Can you post an example?

 

Fred

Share this post


Link to post
Share on other sites

I would have liked to use the XB256 sound tables but I can't.  After a NEW command, a simple program like a loop increasing a tone with CALL SOUND works ... sometimes but mostly hangs. When I execute some CALL SOUND  between some instructions/commands lines  in a bigger XB256 program (it only uses CALL LINK("DISPLY",...) among the XB256 features, the program quickly ends to hang after some sounds played.

 

Edited by fabrice montupet

Share this post


Link to post
Share on other sites

An other very strange and disturbing  behavior (in XB or XB256) in normal speed : The emulation of the keyboard key press seems to be reacting as if it memorized a key pressed for a while in a buffer to give back it till the buffer is empty:  In the example, when I keep a key pressed then I free it, the emulator continues to do as if the key was still pressed while no key are pressed anymore.
 

10 CALL KEY (0,K,S):: IF K<32 THE 10
20 PRINT CHR$(K);
30 FOR T=1 TO 200 :: NEXT T
30 GOTO 10

 

Share this post


Link to post
Share on other sites

You can do this from EDIT mode in RXB since 2001 version:

 

CALL KEY("",5,K,S) :: PRINT K

 

It will not do anything until you press a key, thus return the only key pressed in K.

 

As above in RXB do this:

10 CALL KEY("",0,K,S) 

 

Notice you do not need a IF comparison THEN LINE number as it is avoided.

Share this post


Link to post
Share on other sites
12 hours ago, fabrice montupet said:

An other very strange and disturbing  behavior (in XB or XB256) in normal speed : The emulation of the keyboard key press seems to be reacting as if it memorized a key pressed for a while in a buffer to give back it till the buffer is empty:  In the example, when I keep a key pressed then I free it, the emulator continues to do as if the key was still pressed while no key are pressed anymore.
 


10 CALL KEY (0,K,S):: IF K<32 THE 10
20 PRINT CHR$(K);
30 FOR T=1 TO 200 :: NEXT T
30 GOTO 10

 

Yes, TI994w has a keyboard buffer of 10 characters ... very conveniant ;-)

 

I don't understand what the problem is here or what the above code proofs

What do you mean with normal speed? Ti99/4w does not have a speed selector. Or is is something in XB256?

 

Edited by F.G. Kaal

Share this post


Link to post
Share on other sites
6 hours ago, oddemann said:

Shamus dos not work on this emulator 😛 , that is a emulator problem :D

Never mind, I only use an emulator for programming, all the rest is done on the real computer 🙂

  • Like 2

Share this post


Link to post
Share on other sites
27 minutes ago, RXB said:

What is SHAMUS? Never heard of it?

 

It's a game that was released on the C64, Atari 8-bit and TI-99/4a ... don't know of any other version , it's an overhead maze shooting game.

shamus.jpg.c9c16d460c3604939825ada2726975c4.jpg

  • Like 1

Share this post


Link to post
Share on other sites
Just now, Retrospect said:

It's a game that was released on the C64, Atari 8-bit and TI-99/4a ... don't know of any other version , it's an overhead maze shooting game.

shamus.jpg.c9c16d460c3604939825ada2726975c4.jpg

Oh so it has a KEY SCAN routine that is not compatible with TI99/4A?

Well it was not written for the TI99/4A so someone needs to fix it as that is not the fault of the Emulator but the bad conversion.

Share this post


Link to post
Share on other sites
8 hours ago, F.G. Kaal said:

Yes, TI994w has a keyboard buffer of 10 characters ... very conveniant ;-)

 

I don't understand what the problem is here or what the above code proofs

What do you mean with normal speed? Ti99/4w does not have a speed selector. Or is is something in XB256?

 

When the "All free time selection" is enabled the XB programs runs extremely fast, it's fun, impressive, not realistic because it is 3 or 4 time faster but very practical for executing some tasks in a program development) .  When the option "All free time selection"  is disabled the emulator speed react as a real TI-99/4A, this is what I named normal speed. 

 

For the keyboard buffer, "conveniant" is not the word that comes to me. I better would say "problematic" because it does not respect a TI-99/4A keyboard behavior. In a game that I am writing, when I stop pressing a movement key, my character continues a while to move.  I hope that you will propose this "feature" as an option to be disabled by user if needed 🙂

 

Share this post


Link to post
Share on other sites
51 minutes ago, Retrospect said:

It's a game that was released on the C64, Atari 8-bit and TI-99/4a ... don't know of any other version , it's an overhead maze shooting game.

shamus.jpg.c9c16d460c3604939825ada2726975c4.jpg

 

I played it on my aunt's PCjr.

  • Like 3

Share this post


Link to post
Share on other sites
1 hour ago, RXB said:

What is SHAMUS? Never heard of it?

One of my favorite games, Atarisoft, we had it once as the monthly competition. Runs on MAME as cartridge "shamus".

  • Like 2

Share this post


Link to post
Share on other sites
1 hour ago, RXB said:

someone needs to fix it as that is not the fault of the Emulator but the bad conversion

The first thing that needs to be done is check if this problem with Shamus exists on other TI emulators, Classic99, JS99er, Mame etc.  

Edited by Retrospect

Share this post


Link to post
Share on other sites
1 hour ago, OLD CS1 said:

I played it on my aunt's PCjr.

 

There was also a version released for the Tandy Coco. 

Share this post


Link to post
Share on other sites
3 minutes ago, jhd said:

There was also a version released for the Tandy Coco. 

I am pretty certain every system had a port of it.  It is a surprisingly addictive game.

Share this post


Link to post
Share on other sites
2 hours ago, RXB said:

Oh so it has a KEY SCAN routine that is not compatible with TI99/4A?

Well it was not written for the TI99/4A so someone needs to fix it as that is not the fault of the Emulator but the bad conversion.

no it runs fine on hardware, mame, classic99.. just not one emulator.. sounds like...the emulator

  • Thanks 1

Share this post


Link to post
Share on other sites

To re-concentrate to the subject of this thread, an other strange behavior of TI994W: 

With CALL SPRITE(#1,48,16,1,1), a white "0" should appear at row1 and column 1 but it doesn't. To see it, it must be moved to row 2 (!) 

 

  • Like 3

Share this post


Link to post
Share on other sites

Does CALL SOUND work normally  when using standard XB? Do the CALL SOUND problems happen when using XB256 running uncompiled from XB?

Same questions for CALL KEY:

Does CALL KEY have problems when using standard XB? Do the CALL SOUND problems happen when using XB256 running uncompiled from XB?

 

Shamus gets super frantic at the higher levels. I figured out where the life is lost in the code and wrote an interrupt routine to restore the lost life.  With that cheat I was able to finish the game.

  • Like 3

Share this post


Link to post
Share on other sites
17 hours ago, fabrice montupet said:

When the "All free time selection" is enabled the XB programs runs extremely fast, it's fun, impressive, not realistic because it is 3 or 4 time faster but very practical for executing some tasks in a program development) .  When the option "All free time selection"  is disabled the emulator speed react as a real TI-99/4A, this is what I named normal speed. 

 

For the keyboard buffer, "conveniant" is not the word that comes to me. I better would say "problematic" because it does not respect a TI-99/4A keyboard behavior. In a game that I am writing, when I stop pressing a movement key, my character continues a while to move.  I hope that you will propose this "feature" as an option to be disabled by user if needed 🙂

 

Yes ... that "use all free CPU time" feature. That is neat if some heave calculations mus be executed ;-)

This feature is copied from a traffic controller emulator I have build. With these kind of emulators you want to simulate a few weeks as fast as possible.

 

I've copied that keyboard buffer feature from mdos. I was searching for a good method for implementing the TI keyboard in the TI994w emulator. This was a good option for that time. I just recently found out that the autorepeat delay is not such a good option with this implementation when playing games. For example in Parsec it takes some time before the space ship moves up-down when using the arrow keys. I was allready thinking about another keyboard implementation as used in Classic99 or like I have done with the USB to AT keyboard converters. Will add this in the near future.

 

Share this post


Link to post
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...