Jump to content
IGNORED

AI Based TI-99 Development is a thing!


Recommended Posts

I tried using Google Gemini (formerly Bard) and it didn't do a great job, however, Bing Copilot did a pretty good job.

 

My prompt: 

Please write an extended basic program for the TI-99/4A which animates a sprite character walking across the screen.
 
The generated output:
100 CALL CLEAR
110 CALL CHAR(42,"3C4242423C00") :: CALL COLOR(2,16,1)
120 CALL SPRITE(#1,42,2,15,100)
130 FOR POS=15 TO 120 STEP 5
140   CALL LOCATE(#1,POS,100)
150   CALL SOUND(100,-7,2)
160   FOR DELAY=1 TO 100 :: NEXT DELAY
170 NEXT POS
180 CALL DELSPRITE(#1)

The only problem was it named the variable POS, which it didn't like.  Changing this to another name and this operates just fine.


  • Like 3
Link to comment
Share on other sites

12 minutes ago, Tursi said:

Since this thread reminded me of that one, I went back and asked it again to do the asterisk program, and it didn't remember. ;)

 

some one turned off the TI99 console, and forgot to save the AI training data to cassette tape.

 

Has anyone tried AI on doing a TMS9900 Assembly program? or just TI Basic?

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

17 hours ago, Gary from OPA said:

some one turned off the TI99 console, and forgot to save the AI training data to cassette tape.

 

Has anyone tried AI on doing a TMS9900 Assembly program? or just TI Basic?

I've tried a few things with assembly but its knowledge (ChatGPT 3.5) was too limited to create anything useful. Not sure if it's a lack of available training material (probably).

Link to comment
Share on other sites

16 minutes ago, Retrospect said:

https://zzzcode.ai/code-generator

Quote

Prompt: Move the letter "A" across the middle of the screen, from left to right.

Language: TI Extended BASIC

CALL CLEAR
FOR X = 1 TO 32
CALL HCHAR(12, X, 65)
CALL DELAY(3)
CALL HCHAR(12, X, 32)
NEXT X

https://zzzcode.ai/code-generator?id=ceb886a8-9e5b-4d84-84d4-daaa5ad6fd64

 

 

Quote

A program which moves a an airplane-shaped character across the screen, each time randomly either left to right or right to left, on a path at a random height from the bottom of the screen, no closer than 10 rows to the bottom of the screen, at a random speed.

 

At the very bottom of the screen is a status bar showing the number of player shots remaining, the number of misses (which is the number of planes which get away from the player,) and the current score.  Above the status information is a row of blocks of a single color.

 

Above this row of blocks is the player area.  The player is a tank-shaped character which can move to the left or right.  The player cannot move beyond the boundaries of the screen width.  The player fires only one shot at a time, which travels from the player up to the top of the screen.  When a plane is hit by a shot, the plane explodes and disappears from the screen.

 

The player scores when the shot hits the plane.  Score is based upon the height of the plane from the bottom of the screen, and the speed of the plane: higher up the screen scores more, and a higher speed scores more.  Scoring is arbitrary, but should not exceed 500 points per hit.

 

The player is given 20 shots to start the game.  If after 20 shots, fewer than 5 planes have been missed within those 20 shots, the player will advance to another round, be awarded 100 points, and given another 20 shots.  This continues until the player misses 5 or more planes in a round.

 

At the end of a game, the program should end its run.  The program may use character graphics or sprites for the moving objects.

10 CALL CLEAR
20 CALL SCREEN(2)
30 CALL CHAR(33,"3C7E7E7E3C000000")
40 CALL CHAR(34,"0000007E7E7E7E3C")
50 CALL CHAR(35,"3C3C3C3C3C3C3C3C")
60 CALL CHAR(36,"0000000000003C3C")
70 CALL CHAR(37,"0000000000007E7E")
80 CALL CHAR(38,"000000000000FFFF")
90 CALL CHAR(39,"000000000000FFFF")
100 CALL CHAR(40,"000000000000FFFF")
110 CALL CHAR(41,"000000000000FFFF")
120 CALL CHAR(42,"000000000000FFFF")
130 CALL CHAR(43,"000000000000FFFF")
140 CALL CHAR(44,"000000000000FFFF")
150 CALL CHAR(45,"000000000000FFFF")
160 CALL CHAR(46,"000000000000FFFF")
170 CALL CHAR(47,"000000000000FFFF")
180 CALL CHAR(48,"000000000000FFFF")
190 CALL CHAR(49,"000000000000FFFF")
200 CALL CHAR(50,"000000000000FFFF")
210 CALL CHAR(51,"000000000000FFFF")
220 CALL CHAR(52,"000000000000FFFF")
230 CALL CHAR(53,"000000000000FFFF")
240 CALL CHAR(54,"000000000000FFFF")
250 CALL CHAR(55,"000000000000FFFF")
260 CALL CHAR(56,"000000000000FFFF")
270 CALL CHAR(57,"000000000000FFFF")
280 CALL CHAR(58,"000000000000FFFF")
290 CALL CHAR(59,"000000000000FFFF")
300 CALL CHAR(60,"000000000000FFFF")
310 CALL CHAR(61,"000000000000FFFF")
320 CALL CHAR(62,"000000000000FFFF")
330 CALL CHAR(63,"000000000000FFFF")
340 CALL CHAR(64,"000000000000FFFF")
350 CALL CHAR(65,"000000000000FFFF")
360 CALL CHAR(66,"000000000000FFFF")
370 CALL CHAR(67,"000000000000FFFF")
380 CALL CHAR(68,"000000

 

https://zzzcode.ai/code-generator?id=819afc4e-44e2-4661-aa4c-f301cd4949f4

 

¯\_(ツ)_/¯

  • Like 2
Link to comment
Share on other sites

1 hour ago, OLD CS1 said:
CALL CLEAR
FOR X = 1 TO 32
CALL HCHAR(12, X, 65)
CALL DELAY(3)
CALL HCHAR(12, X, 32)
NEXT X

https://zzzcode.ai/code-generator?id=ceb886a8-9e5b-4d84-84d4-daaa5ad6fd64

 

 

10 CALL CLEAR
20 CALL SCREEN(2)
30 CALL CHAR(33,"3C7E7E7E3C000000")
40 CALL CHAR(34,"0000007E7E7E7E3C")
50 CALL CHAR(35,"3C3C3C3C3C3C3C3C")
60 CALL CHAR(36,"0000000000003C3C")
70 CALL CHAR(37,"0000000000007E7E")
80 CALL CHAR(38,"000000000000FFFF")
90 CALL CHAR(39,"000000000000FFFF")
100 CALL CHAR(40,"000000000000FFFF")
110 CALL CHAR(41,"000000000000FFFF")
120 CALL CHAR(42,"000000000000FFFF")
130 CALL CHAR(43,"000000000000FFFF")
140 CALL CHAR(44,"000000000000FFFF")
150 CALL CHAR(45,"000000000000FFFF")
160 CALL CHAR(46,"000000000000FFFF")
170 CALL CHAR(47,"000000000000FFFF")
180 CALL CHAR(48,"000000000000FFFF")
190 CALL CHAR(49,"000000000000FFFF")
200 CALL CHAR(50,"000000000000FFFF")
210 CALL CHAR(51,"000000000000FFFF")
220 CALL CHAR(52,"000000000000FFFF")
230 CALL CHAR(53,"000000000000FFFF")
240 CALL CHAR(54,"000000000000FFFF")
250 CALL CHAR(55,"000000000000FFFF")
260 CALL CHAR(56,"000000000000FFFF")
270 CALL CHAR(57,"000000000000FFFF")
280 CALL CHAR(58,"000000000000FFFF")
290 CALL CHAR(59,"000000000000FFFF")
300 CALL CHAR(60,"000000000000FFFF")
310 CALL CHAR(61,"000000000000FFFF")
320 CALL CHAR(62,"000000000000FFFF")
330 CALL CHAR(63,"000000000000FFFF")
340 CALL CHAR(64,"000000000000FFFF")
350 CALL CHAR(65,"000000000000FFFF")
360 CALL CHAR(66,"000000000000FFFF")
370 CALL CHAR(67,"000000000000FFFF")
380 CALL CHAR(68,"000000

 

https://zzzcode.ai/code-generator?id=819afc4e-44e2-4661-aa4c-f301cd4949f4

 

¯\_(ツ)_/¯

It just gave up?!  

Link to comment
Share on other sites

1 hour ago, Retrospect said:

It just gave up?!  

In this case, it completed the requested task but used an invalid subprogram.  It did decide to attempt a delay in the motion, which I did not request -- though I also did not prohibit a delay.  It also executed my request of moving the letter across the middle of the screen by using row 12 and knew the screen is 32 columns wide.  Most of what it did indicates a knowledge of TI BASIC equivalent to some of the starters dropping by the forum.

  • Like 3
Link to comment
Share on other sites

When I asked it to do a Python Pygame program to do a bouncing ball sprite, it didn't achieve it on first attempt.  I had to tell it to update the screen with each animation, and then it got it right  ... It needs a little push in not so obvious places.  I'll have a bash with TI Basic, I actually remember I tried once to get it to do some 9900 assembly, and according to the assembly guys on here it failed miserably.  

Link to comment
Share on other sites

4 minutes ago, Retrospect said:

When I asked it to do a Python Pygame program to do a bouncing ball sprite, it didn't achieve it on first attempt.  I had to tell it to update the screen with each animation, and then it got it right  ... It needs a little push in not so obvious places.  I'll have a bash with TI Basic, I actually remember I tried once to get it to do some 9900 assembly, and according to the assembly guys on here it failed miserably.  

The problem with AI doing assembly, is what type of program can you generate without any user input, display, sound, etc. as all those things are more it would have to understand like the tms9918 for video and how it is accessed at least on the ti99 side.

 

A pure 9900 cpu only program it should be I hope able to do if you leave out anything to do with external devices or input.

 

Try something like a math formula with known values or a counter something simple and see if at least it understands the tms9900 instruction set.

  • Like 3
Link to comment
Share on other sites

Concerning the capabilities of ChatGPT 3.5, I recently asked it to solve the equation "(-3)^a = 3" for a. I found this challenge on a Youtube thumbnail and tried it for myself before watching the video.

(For those who wonder: This can only be solved in the field C of complex numbers. a=1 is wrong since -3^1 = -3, and a=-1 is wrong either, since -3^(-1) = 1/-3 = -1/3.)

 

It took me roughly 15 minutes; my math diploma is already 30 years old.

 

Actually, ChatGPT solved it correctly in a few seconds. In hindsight, I should have given it other numbers (like -5 instead of -3); I suspect that it learned it from that Youtube video or a transcript of it. Interestingly, one of my colleagues tried a similar prompt and got nonsense back.

 

  • Like 1
Link to comment
Share on other sites

Posted (edited)
6 hours ago, mizapf said:

Actually, ChatGPT solved it correctly in a few seconds. In hindsight, I should have given it other numbers (like -5 instead of -3); I suspect that it learned it from that Youtube video or a transcript of it. Interestingly, one of my colleagues tried a similar prompt and got nonsense back.

I had a little chat with ChatGPT about it.

Quote

 

User
Can you solve equations?
ChatGPT
Absolutely! I'd be happy to help you solve equations. Just provide me with the equation you'd like to solve, and I'll do my best to assist you.

User
Where did you learn to do that?
ChatGPT
I've been trained on a diverse dataset that includes a wide range of mathematical concepts, including algebraic equations. My training data consists of various types of equations and their solutions, allowing me to understand patterns and methods for solving them. Additionally, I'm equipped with algorithms and mathematical principles that enable me to solve equations efficiently.

User
Is that fundamentally different from how you learn about other subjects?
ChatGPT
In a way, yes. While I approach learning different subjects in a similar manner—by analyzing patterns, understanding relationships, and recognizing similarities and differences—my understanding of mathematical concepts often involves specific algorithms and rules. For subjects like history or literature, I rely more on understanding context, language structures, and the relationships between events or themes. So, while the underlying principles of learning are similar, the methods and tools I use can vary depending on the subject matter.

 

 

Edited by Asmusr
  • Like 2
Link to comment
Share on other sites

6 hours ago, Tursi said:

I spent some time getting ChatGPT to write some 9900 assembly. After a LOT of coercing I gave up once it successfully cleared the screen. ;)

 

https://tursilion.blogspot.com/2024/02/ai-code-gen.html

 

So the additional information you provided, has it now remembered that, or did it remember it only within the context of that conversation? If you asked the same question again, would it now get it 'more right' first time?

  • Like 1
Link to comment
Share on other sites

12 hours ago, Tursi said:

I spent some time getting ChatGPT to write some 9900 assembly. After a LOT of coercing I gave up once it successfully cleared the screen. ;)

 

https://tursilion.blogspot.com/2024/02/ai-code-gen.html

 

I like the fact that it suggests you switch to using Forth.  :) 

 

"Now go forth, and bring our vision to life! Let the TI-99/4A tremble at our combined might! Mwahahaha!"

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

2 hours ago, TheBF said:

I like the fact that it suggests you switch to using Forth.  :) 

 

"Now go forth, and bring our vision to life! Let the TI-99/4A tremble at our combined might! Mwahahaha!"

I imagine that goes more like this.  But, being it is Skeletor... I am afraid I have no video reference for that.

 

 

  • Haha 1
Link to comment
Share on other sites

9 hours ago, Stuart said:

So the additional information you provided, has it now remembered that, or did it remember it only within the context of that conversation? If you asked the same question again, would it now get it 'more right' first time?

That was an older version of ChapGPT, so I doubt it remembered.

 

Even Meta.ai, which confidently told me it would remember, didn't. We might still be a ways off training these things persistently.

 

Link to comment
Share on other sites

5 hours ago, Tursi said:

That was an older version of ChapGPT, so I doubt it remembered.

 

Even Meta.ai, which confidently told me it would remember, didn't. We might still be a ways off training these things persistently.

I imagine these "AI" companies purposefully allow or deliberately prevent user-supplied information from being remembered indefinitely.

 

I cannot see how people tolerate the over-the-top verbosity of these LLMs.  They annoy the absolute frak out of me.  Can I get somewhere between Marvin the Paranoid Android and Eddie the ship-board computer?  Something along the lines of MOTHER from "Alien" might even be acceptable: I ask a question, it gives me an answer with no pomp and no circumstance, no lesson, no apologies for being incorrect, and, by the way, how about only answering interrogatories?

Link to comment
Share on other sites

9 hours ago, OLD CS1 said:

I imagine these "AI" companies purposefully allow or deliberately prevent user-supplied information from being remembered indefinitely.

 

I cannot see how people tolerate the over-the-top verbosity of these LLMs.  They annoy the absolute frak out of me.  Can I get somewhere between Marvin the Paranoid Android and Eddie the ship-board computer?  Something along the lines of MOTHER from "Alien" might even be acceptable: I ask a question, it gives me an answer with no pomp and no circumstance, no lesson, no apologies for being incorrect, and, by the way, how about only answering interrogatories?

I remember seeing and trying a prompt in the early days that instructed it to answer more like that, and it seemed to work.

The memory problem is probably bigger long term than the quality of people on the internet, though that's huge. The models are trained to generate a fixed matrix, as it were. Currently the way memory is usually implemented is just to make it part of the prompt, which necessarily limits how much memory is possible (quite limited, in many cases). Until we have a better/faster way to incorporate additional information to the dataset, I don't see true persistence happening.

 

That said, the ability to start with a baseline and /actually/ teach it is probably going to be the next leap forward. It's probably not that far off but I think it will require another algorithm jump, rather than relying on hardware advances. We'll see in a couple of years if my crystal ball is any good. ;)

 

  • Like 1
Link to comment
Share on other sites

I am hearing that some of the AI systems are just a bunch of paid TECHO's getting prompted by a Pseudo-AI Terminal system to get answers and try to reply, this could explain the lack of memorised sessions and the difficulty in interpreting the users input. I have yet to have much confidence in the current Big Techs exaggeration of AI, they boast too much and do not deliver. Where the TMS9900 has been around for 50 years and the AI can barely make a sample better than a beginners code, it should know and understand every Texas Microprocessor and Data book and it's contents, instantly, it seems we are being led by the hype.    

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