Jump to content
IGNORED

My First TI-99 4/A


mrelijahgardner

Recommended Posts

I have purchased my first TI99 4/a. I have wanted one for a while mainly just because its an 8-bit era computer that I have never owned.

Honestly I'm a little underwhelmed with it but it has some potential to be a fun little computer.

 

I don't have any storage devices so it limits the complexity of programs I could write for it or use. I will probably end up getting setup with a cassette drive possibly digital unless I can find a somewhat cheap SD card solution. I also think I want an extended basic cartridge.

 

I did manage to get a program written for it and it was fun.

 

"TI PUPPY NUMBER GUESSING GAME" for the TI-99/4A
TYPE IN LISTING BY: ELIJAH GARDNER 2020

*Note - in PRINT statment indcates a 'SPACE BAR'

10 CALL CHAR(97,"FFFFFFFFFFFFFFFF")
20 CALL CHAR(104,"FFFFFFFFFFFFFFFF")
30 CALL CHAR(114,"FFFFFFFFFFFFFFFF")
40 CALL COLOR(10,9,9)
50 CALL COLOR(11,16,16)
60 CALL CLEAR
70 PRINT "-----aaaaaaa"
80 PRINT "---aahhrrrrhaa"
90 PRINT "--ahharrrrhhhha"
100 PRINT "-ahharrrrhhhahha"
110 PRINT "-ahhararrhahahha"
120 PRINT "--aharrrrhhhaha"
130 PRINT "--aharrrrrhhaha"
140 PRINT "---a-araaara-a"
150 PRINT "-----arrarra"
160 PRINT "------arrra"
170 PRINT "-------aaa"
180 PRINT
190 PRINT "'TI' PUPPY IS THINKING OF A"
200 PRINT "NUMBER BETWEEN 1-100"
210 RANDOMIZE
220 N=INT(100*RND)+1
230 PRINT
240 PRINT "YOUR GUESS";
250 INPUT G
260 IF G>N THEN 330
270 IF G<N THEN 350
280 PRINT
290 PRINT "YOU GUESSED THE NUMBER!!!!"
300 PRINT "ENTER- TO PLAY AGAIN";
310 INPUT A$
320 GOTO 60
330 PRINT "YOUR GUESS IS HIGH"
340 GOTO 230
350 PRINT "YOUR GUESS IS LOW"
360 GOTO 230

 

In hindsight I don't guess I needed to define the characters as I ended up setting the foreground and the background color the same.

 

Anyway I'm sure I'll be back with some questions about it and any suggestions for storage device options would be appreciated.

 

131528332_3651974204848070_833868652681970442_o.jpeg

  • Like 11
Link to comment
Share on other sites

27 minutes ago, mrelijahgardner said:

I have purchased my first TI99 4/a. I have wanted one for a while mainly just because its an 8-bit era computer that I have never owned.

Honestly I'm a little underwhelmed with it but it has some potential to be a fun little computer.

 

I don't have any storage devices so it limits the complexity of programs I could write for it or use. I will probably end up getting setup with a cassette drive possibly digital unless I can find a somewhat cheap SD card solution. I also think I want an extended basic cartridge.

 

I did manage to get a program written for it and it was fun.

 

"TI PUPPY NUMBER GUESSING GAME" for the TI-99/4A
TYPE IN LISTING BY: ELIJAH GARDNER 2020

*Note - in PRINT statment indcates a 'SPACE BAR'

10 CALL CHAR(97,"FFFFFFFFFFFFFFFF")
20 CALL CHAR(104,"FFFFFFFFFFFFFFFF")
30 CALL CHAR(114,"FFFFFFFFFFFFFFFF")
40 CALL COLOR(10,9,9)
50 CALL COLOR(11,16,16)
60 CALL CLEAR
70 PRINT "-----aaaaaaa"
80 PRINT "---aahhrrrrhaa"
90 PRINT "--ahharrrrhhhha"
100 PRINT "-ahharrrrhhhahha"
110 PRINT "-ahhararrhahahha"
120 PRINT "--aharrrrhhhaha"
130 PRINT "--aharrrrrhhaha"
140 PRINT "---a-araaara-a"
150 PRINT "-----arrarra"
160 PRINT "------arrra"
170 PRINT "-------aaa"
180 PRINT
190 PRINT "'TI' PUPPY IS THINKING OF A"
200 PRINT "NUMBER BETWEEN 1-100"
210 RANDOMIZE
220 N=INT(100*RND)+1
230 PRINT
240 PRINT "YOUR GUESS";
250 INPUT G
260 IF G>N THEN 330
270 IF G<N THEN 350
280 PRINT
290 PRINT "YOU GUESSED THE NUMBER!!!!"
300 PRINT "ENTER- TO PLAY AGAIN";
310 INPUT A$
320 GOTO 60
330 PRINT "YOUR GUESS IS HIGH"
340 GOTO 230
350 PRINT "YOUR GUESS IS LOW"
360 GOTO 230

 

In hindsight I don't guess I needed to define the characters as I ended up setting the foreground and the background color the same.

 

Anyway I'm sure I'll be back with some questions about it and any suggestions for storage device options would be appreciated.

 

131528332_3651974204848070_833868652681970442_o.jpeg

There is a pinned FAQ here on this forum, would be be a great idea to read through it and get familiar with that great little machine will find a lot of good information there.

 

Edited by RickyDean
add link
  • Like 1
Link to comment
Share on other sites

1 hour ago, mrelijahgardner said:

I have purchased my first TI99 4/a. I have wanted one for a while mainly just because its an 8-bit era computer that I have never owned.

Honestly I'm a little underwhelmed with it but it has some potential to be a fun little computer.

 

I don't have any storage devices so it limits the complexity of programs I could write for it or use. I will probably end up getting setup with a cassette drive possibly digital unless I can find a somewhat cheap SD card solution. I also think I want an extended basic cartridge.

 

I did manage to get a program written for it and it was fun.

 

"TI PUPPY NUMBER GUESSING GAME" for the TI-99/4A
TYPE IN LISTING BY: ELIJAH GARDNER 2020

*Note - in PRINT statment indcates a 'SPACE BAR'

10 CALL CHAR(97,"FFFFFFFFFFFFFFFF")
20 CALL CHAR(104,"FFFFFFFFFFFFFFFF")
30 CALL CHAR(114,"FFFFFFFFFFFFFFFF")
40 CALL COLOR(10,9,9)
50 CALL COLOR(11,16,16)
60 CALL CLEAR
70 PRINT "-----aaaaaaa"
80 PRINT "---aahhrrrrhaa"
90 PRINT "--ahharrrrhhhha"
100 PRINT "-ahharrrrhhhahha"
110 PRINT "-ahhararrhahahha"
120 PRINT "--aharrrrhhhaha"
130 PRINT "--aharrrrrhhaha"
140 PRINT "---a-araaara-a"
150 PRINT "-----arrarra"
160 PRINT "------arrra"
170 PRINT "-------aaa"
180 PRINT
190 PRINT "'TI' PUPPY IS THINKING OF A"
200 PRINT "NUMBER BETWEEN 1-100"
210 RANDOMIZE
220 N=INT(100*RND)+1
230 PRINT
240 PRINT "YOUR GUESS";
250 INPUT G
260 IF G>N THEN 330
270 IF G<N THEN 350
280 PRINT
290 PRINT "YOU GUESSED THE NUMBER!!!!"
300 PRINT "ENTER- TO PLAY AGAIN";
310 INPUT A$
320 GOTO 60
330 PRINT "YOUR GUESS IS HIGH"
340 GOTO 230
350 PRINT "YOUR GUESS IS LOW"
360 GOTO 230

 

In hindsight I don't guess I needed to define the characters as I ended up setting the foreground and the background color the same.

 

Anyway I'm sure I'll be back with some questions about it and any suggestions for storage device options would be appreciated.

 

131528332_3651974204848070_833868652681970442_o.jpeg

For someone new to the system, your little game is actually pretty good! ?

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

I like the way the Monitor looks too. The Computer has quite a few scratches. The Monitor came out of my motor home and its got plenty of wear too.

 

My biggest complaint about the machine is its so slow. Is the Extended basic any faster? Is the only way to get decent speed to program in assembly? How much faster would compiled basic be?

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

3 hours ago, mrelijahgardner said:

 

My biggest complaint about the machine is its so slow. Is the Extended basic any faster?

Yes, somewhat faster. 

3 hours ago, mrelijahgardner said:

 

Is the only way to get decent speed to program in assembly?

 

No, all other available options are noticeably faster than console BASIC, and some are greatly faster.  Including but not limited to:

 

- Extended BASIC

- Forth

- GPL (the machine's native low-level interpreted language)

- Compiled BASIC

- Extended BASIC using assembly support routines (e.g., XB256, The Missing Link, T40XB, T80XB)

 

The bolded cases being ones which can be fast enough to write complex action games.  Which isn't to say XB action games don't exist.  But you have to be clever about working within pretty severe performance limitations. 

 

3 hours ago, mrelijahgardner said:

 

How much faster would compiled basic be?

 

Much, much faster. 

 

Link to comment
Share on other sites

It's hard for me to say it's worth having XB In the "faster language" category... yes, it's faster, but no, it won't make a playable difference to most (all) games. It's like racing tar and molasses... ;)

 

GPL is pretty much assembly language, it's just a different assembly language for a virtual machine - so if you don't like assembly you won't like GPL much better. Its main advantage is being more compact than 9900 asm.

 

Everything else is very performant, and in particular the BASIC compiler by Senior Falcon is amazing these days, handling most of XB as well as standard BASIC (with floating point being the main feature missing). There have actually been a number of games released in compiled BASIC, and the results are very impressive. Have a look at some of Retrospect's games for samples there.

 

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

There are strange little speed differences between TI BASIC and Extended BASIC that you wouldn't think would happen.

Notably, if we generate a bunch or random numbers and display them in a loop, like this;

TI BASIC

10 RANDOMIZE

12 DIM R(10)

15 T=0

20 FOR A=1 TO 10

30 R(A)=INT(6*RND)+1

40 T=T+R(A)

50 PRINT R(A)

60 NEXT A

70 PRINT "THE TOTAL IS ";T

80 STOP

 

TI EXTENDED BASIC

10 RANDOMIZE::DIM R(10)::T=0

20 FOR A=1 TO 10::R(A)=INT(6*RND)+1::T=T+R(A)::PRINT R(A)::NEXT A::PRINT "THE TOTAL IS ";T::STOP

 

You would think XB would be faster but in this particular case it's not any faster at all due to the random number generator being quicker in TI BASIC for some insane reason?!

 

There's also another option for Extended Basic, it's called RXB .... Actually I'm dumbfoundedly shocked that Rich hasn't already plugged it in this thread so I'll wait for him to pop up and tell you all about it's extra features! ;)

  • Like 3
  • Thanks 1
  • Haha 2
Link to comment
Share on other sites

7 hours ago, Retrospect said:

You would think XB would be faster but in this particular case it's not any faster at all due to the random number generator being quicker in TI BASIC for some insane reason?!

 

Come on, Joe! You know we have beat this subject to death in more than one other thread. ? The reason XB is so slow with random numbers is that it uses 2 floating point (FP) seeds and all FP math for both RANDOMIZE and RND, whereas TIB uses a single 16-bit integer seed, integer math for RANDOMIZE and byte returns from GPL RAND for each of the 7 FP digits of the FP number returned by RND. Oh—and Rich opted to use TIB’s system for RXB.

 

...lee

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

7 hours ago, Lee Stewart said:

 

Come on, Joe! You know we have beat this subject to death in more than one other thread. ? The reason XB is so slow with random numbers is that it uses 2 floating point (FP) seeds and all FP math for both RANDOMIZE and RND, whereas TIB uses a single 16-bit integer seed, integer math for RANDOMIZE and byte returns from GPL RAND for each of the 7 FP digits of the FP number returned by RND. Oh—and Rich opted to use TIB’s system for RXB.

 

...lee

Thankyou Lee! I knew someone could provide the reason better than I, for I'd forgotten.  Yes indeed TI Basic does use the 16-bit integer seed.  See, the little differences between the two BASIC's .... Rich's RXB is a great, viable option for anyone wanting to program in XB but don't like some of the restrictions it has, as is the XB256 extension and compiler.  The options we have for the TI now are awesome thanks to these great guys.  Also Forth!  Not that I ever could get my head into it but I've seen what it can do and it's race-horse fast.  :)

  • Like 2
Link to comment
Share on other sites

I have the goal of making a RXB game using XB256 with SAMS memory card.

What is missing from XB256 is SAMS support and RXB has that already built in.

The biggest problem with SAMS is where do you put a memory manager in memory unmolested in TI99/4A.

RXB has one built in to VDP or RAM or hardcoded using GPL.

 

  • Like 1
Link to comment
Share on other sites

Here here. Let's just agree to disagree and press on,I think the rest of us can always figure out by ourselves where issue lives with difference of opinions we don't need to blare it out in a forum that actually helps us. Rich makes a product and he supports it and so he'll always do that, and good for that.

we can ignore comments by just reading on to the next, now that's simpler. But I see the other side, but we're not picking sides, nor should we, merry Christmas forum dweller's and let's sparkle in the next future TI year.

 

Edited by GDMike
  • Like 1
  • Thanks 1
Link to comment
Share on other sites

On 12/20/2020 at 9:53 AM, mrelijahgardner said:

How much faster would compiled basic be?

Compiled BASIC is 20-25 times faster than XB in my experience writing a game — SCRAA. Up to 40X faster depending on what you’re doing. Fast enough to write something with good collision detection in a BASIC variant.
 

Assembly is about 5-10 times faster than compiled BASIC, or 200X faster than TI BASIC. 
 

The assembly speed comparison numbers come from my memory of a conversation with Harry in 2017.

 

 

Link to comment
Share on other sites

On 12/20/2020 at 1:18 PM, pixelpedant said:

he bolded cases being ones which can be fast enough to write complex action games.  Which isn't to say XB action games don't exist.  But you have to be clever about working within pretty severe performance limitations. 

   XB has exciting access to sprites yet is really slow just like TI BASIC. Its speed was a major disappointment back in the day because it made for weak collision detection in action games.

   This severe performance limitation itself has been remedied by Harry’s compiler, and his XB256 adds more interesting features to XB. 
   I’d start with XB256 and the compiler if you’re interested in doing  action games. 
  

  • Like 4
Link to comment
Share on other sites

Ive read that sprites are still difficult to use in extended basic. I figure the game I write for it wont be super action based and I'll probably use redefined characters for for movement. Sprites will probably be used for extra images.

 

I'm about to order an extended basic cartridge. So a couple questions.

-Can the compilers mentioned be loaded from tape or do I still need a disk drive solution.

-Do the SD card solutions for this unit use the cartridge port and therefore I wouldn't be able to use the xb cartridge

-If I compile a xb program do you have to have the cartridge installed to run it? Is it similar to how on commodore if you compile an enhanced basic program you still need to load the enhanced basic first?

Link to comment
Share on other sites

The Finalgrom99 (not finalrom)can run Extended basic, no need for a dedicated cartridge of it.

Pretty sure you can not load the compiler from tape.

In addition you need the 32k memory to run the compiler.

I also recommend looking into TIPI as a disk solution.

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

12 minutes ago, jrhodes said:

The Finalgrom99 (not finalrom)can run Extended basic, no need for a dedicated cartridge of it.

Pretty sure you can not load the compiler from tape.

In addition you need the 32k memory to run the compiler.

I also recommend looking into TIPI as a disk solution.

You mean Finalgrom,(FG),

vs Flashrom 99,(FR99) I think.

 

  • 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...