Jump to content
IGNORED

Turbo Forth Game Competition


Vorticon

Recommended Posts

What equipment does it take to run TurboForth? Can the end result be slapped on a cart and run like any other game?

 

@Willsy's TurboForth requires 32 KB RAM an a disk drive---usually means the PEB (peripheral expansion box). It does, indeed, come on a cartridge and is also downloadable from his site (http://turboforth.net/) to run on emulators or burn your own EPROM. @Willsy will likely respond shortly and give you better information. :)

 

...lee

  • Like 1
Link to comment
Share on other sites

TurboForth is a cartridge. You need 32K and a disk drive, same as editor assembler.

 

No you can't put the end result on a cart. You need the TF cart for TF programs just like you need the XB cart for XB programs. :)

 

Just out of curiousity Willsy, can you save to CS1 with Turboforth or is it forced to be disks?

Not that I would want to, but jusk asking ..... :)

Link to comment
Share on other sites

@Willsy's TurboForth requires 32 KB RAM an a disk drive---usually means the PEB (peripheral expansion box). It does, indeed, come on a cartridge and is also downloadable from his site (http://turboforth.net/) to run on emulators or burn your own EPROM. @Willsy will likely respond shortly and give you better information. :)

 

...lee

 

Ha! @Willsy beat my response! I'm way too slow! :D

Edited by Lee Stewart
Link to comment
Share on other sites

Just out of curiousity Willsy, can you save to CS1 with Turboforth or is it forced to be disks?

Not that I would want to, but jusk asking ..... :)

 

No idea! I've never tried it! I personally think it'll crash itself into next week if you tried it! You'd have to try it real hardware rather than the emulators. I've never tried interfacing with the cassette in assembly. I thought the DSR interfacing rules were totally different, since the cassette DSR is in GPL? (So, not called with DSRLNK, rather called with GPLLNK??? If that's true then there's no way it'll work!)

Link to comment
Share on other sites

No idea! I've never tried it! I personally think it'll crash itself into next week if you tried it! You'd have to try it real hardware rather than the emulators. I've never tried interfacing with the cassette in assembly. I thought the DSR interfacing rules were totally different, since the cassette DSR is in GPL? (So, not called with DSRLNK, rather called with GPLLNK??? If that's true then there's no way it'll work!)

 

Gawd when I had a TI99 in 1985 all the games I had were on cassette, apart from the cartridge games such as Parsec, Munchman and Tombstone City. I had Ext.Basic and that was it .... tape recorder was "Realistic" brand with mic,ear, and rem .... OLD CS1 to load. I have recently found out that nearly every game I had apart from tthree (on tape) were all type-ins from Computer & Video Game magazine! ... sorry, off topic of forth, but fook it it's TI related :) ....

 

The three games I had that were commercial tape : Dodger, Castle Conquest, and Chalice.

 

It's immense what we can do with the TI now. TurboForth, Willhelms Compiler, the whole lot. Amazing.

Link to comment
Share on other sites

  • 3 months later...

V1.2?? It's stumbling along. How can I describe it? Hmmm... Well, you know those old classic sports cars that sit in someones garage for 20 years with the engine out and the gearbox open and parts all over the place? That's what TF V1.2 is like right now!

 

Well, that's an exaggeration but you get the idea. It's still compatible with V1.1, but underneath there are some quite large architectural changes. It really should be called V2.0 since there's very little of the code-base that has not been changed between V1.1 and V1.2.

 

V1.2 is also faster than V1.1

 

One of the more recent changes is that the terminal input buffer (the buffer that holds what you type in via the keyboard) has been moved from CPU to VDP RAM. Since block buffers (which hold the contents of blocks read in from disk) are also in VDP this meant some simplification of some internal code, and with simplification comes a reduction in code size.

 

I was working on it last night, and it's all "back together" now, and kind of working, but one or two things seems to have broken, when I wasn't expecting it. Kind of like putting a crank shaft back in and finding a single screw and washer left over! ;-)

 

The word EVALUATE (added in V1.2) which lets a running Forth program execute Forth code as a string (how cool is that!) has broke, for some reason, so I need to check why.

 

I also have some internal re-factoring to do, which again will simplify/streamline the code, and bring it more in-line (architecturally) with classical Forth implementations.

 

*Then* if I have the physical space within the 16K EPROM I'm going to add vocabulary support.

 

*Then* (when I have it all nailed down, instead of a moving target) I'll finish the book.

 

Then I'm taking a break.

 

Then TF V2.0 will start.

 

I've already done some experiments with Direct Threaded Code compilation (TF V1.x is indirect threaded code) - it resulted in about 16% speed increase; probably not worth the hassle.

 

I also did some experimentation with native code compilation with some simple peep-hole optimisation - that resulted in between 95% speed increase in the examples that I tried (just simple stuff like filling the 8K memory 1000 times with values from 0 to 999 and stuff like that). So V2.0 will almost certainly be a native code (i.e. it compiles the Forth source to machine code on the fly) compiler. All the libraries that one must load in TF V1.x (i.e. assembler, 32-bit extensions, Floating Point etc etc) will come built in. It will be at least 64K EPROM, quite possibly 128K.

 

I wanted to have Flash ROM instead of EPROM, and an SD card reader/writer built directly into the cartridge for storage of source code and ROM images (for upgrade of the Flash) but I think that's a pipe-dream.

 

So, it's very very much alive... But I don't spend as much time on it as I did, as I burned myself out on it, if I'm honest. I've noticed that I tend to keep it at more of a distance these days, just to give me some head-space for other things like family etc. It was a bit too much previously, if I'm honest!

 

Mark

  • Like 1
Link to comment
Share on other sites

Yep, V1.1 is out there is and fairly stable. The only problem with it is the word JOYST IIRC. Obviously, that's fixed in V1.2

 

Most other things are the same - there's just extra functionality, a couple of bugs fixes, and a small performance improvement. Under the hood, a *lot* has changed, but that's invisible to the user... :-)

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