Jump to content
IGNORED

A *NEW* TI Screensaver...


Omega-TI

Recommended Posts

The TI-99/4A has a few 'screen saver' type programs, like the lines demo, and I suppose someone could use Tursi's slideshow program or the cassette based Grono's sound show. But what about the F18A and/or something possibly using the TIPI?

 

What could you come up with that would really dazzle the TI community and possibly even be practical? Would it be a 24/7 weather program with graphics, a better lines program or a higher resolution slideshow program or something entirely different and new? Possibly a fusion of two programs, like a lines program that switches to Chatti when a new message is posted? Who knows... IT'S UP TO YOU!

 

How long would it take to create such a program? If Fest West is at it's regular time next year, you would have 5 & 1/2 months to create your masterpiece. Even if you could not make Fest West this year, you could get someone to make the presentation for you, have it recorded and put on You Tube for all the world to see and live on for decades to come.

 

Anyone(s) willing to take it on?

Link to comment
Share on other sites

The properties that distinguish a screensaver from a demo are that it appears automatically after a period of inactivity and it disappears again, restoring everything to its previous state, when it senses activity again.

 

The problem is we don't have any way to reserve some memory for a screensaver on a unexpanded machine. Even with 32K, placing a routine in the lower 8K and running it on the ISR hook doesn't quite do the tick IMHO. Any software except BASIC programs can, and probably will, overwrite it. The F18A, however, has 2K private memory that hardly any software is using.

 

The F18A GPU can run a routine concurrenty with the CPU to detect inactivity. The problem is that it only has access to VDP RAM, so the detection cannot be based on keyboard input but would have to be based on whether the screen is changing. This would not work for BASIC, for instance, where the cursor is blinking, but it would work for the color bar screen, many menus, and lots of other software.

 

Once inactivity is detected, the screensaver would save the VDP RAM and registers that it's going to use, and then run the actual screensaver, which would have to be very simple to fit into the 2K together with the saved VDP RAM. The VDP RAM could also be saved to the F18A flash memory, which would free up more RAM and allow the screensaver to use all the VDP memory.

 

While the screensaver is running it would continue to detect if the CPU is changing the VDP RAM. I imagine this could be done by calculating a VDP RAM checksum after each screensaver frame and check if it matches with a checksum calculated before the next frame. As soon as changes were detected it would stop the actual screensaver and return to background mode.

 

I once made a F18A demo where the whole screen was wobbling by changing the scroll offset for each pixel line. That would be a good candidate for trying out this idea because it's not changing the content of the VDP RAM at all, which eliminates the need to save/restore the RAM and makes it easy to detect changes to the RAM.

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

The properties that distinguish a screensaver from a demo are that it appears automatically after a period of inactivity and it disappears again, restoring everything to its previous state, when it senses activity again.

 

The problem is we don't have any way to reserve some memory for a screensaver on a unexpanded machine. Even with 32K, placing a routine in the lower 8K and running it on the ISR hook doesn't quite do the tick IMHO. Any software except BASIC programs can, and probably will, overwrite it. The F18A, however, has 2K private memory that hardly any software is using.

 

The F18A GPU can run a routine concurrenty with the CPU to detect inactivity. The problem is that it only has access to VDP RAM, so the detection cannot be based on keyboard input but would have to be based on whether the screen is changing. This would not work for BASIC, for instance, where the cursor is blinking, but it would work for the color bar screen, many menus, and lots of other software.

 

Once inactivity is detected, the screensaver would save the VDP RAM and registers that it's going to use, and then run the actual screensaver, which would have to be very simple to fit into the 2K together with the saved VDP RAM. The VDP RAM could also be saved to the F18A flash memory, which would free up more RAM and allow the screensaver to use all the VDP memory.

 

While the screensaver is running it would continue to detect if the CPU is changing the VDP RAM. I imagine this could be done by calculating a VDP RAM checksum after each screensaver frame and check if it matches with a checksum calculated before the next frame. As soon as changes were detected it would stop the actual screensaver and return to background mode.

 

I once made a F18A demo where the whole screen was wobbling by changing the scroll offset for each pixel line. That would be a good candidate for trying out this idea because it's not changing the content of the VDP RAM at all, which eliminates the need to save/restore the RAM and makes it easy to detect changes to the RAM.

Cool flying toasters here we come :)

 

Sent from my LG-H872 using Tapatalk

Link to comment
Share on other sites

Does anyone have a copy of the Ekmelsoft screensaver program? He had fishbowl and a bunch of other things as well, IIRC.

 

I have it. He sold them for $5 at one of the Chicago Faires maybe 7 or 8 years ago...

I would upload a copy but since it was a commercial product I would prefer not to unless we have permission from the author. I don't know if he lurks around here or not.... His name is Greg Ekmel.

  • Like 2
Link to comment
Share on other sites

I use "Fishtank 5" all the time. Fish tank "5" added "Shark Tank" to "Fish Tank 4." Greg has had serious medical issues over the past few years and is now in recovery. Greg is an outstanding programmer and has other software in addition to his "Fish Tank" series. Hopefully he will once again take up programming when he is able.

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