Jump to content
Sign in to follow this  
GDMike

TI Forth ONLY machine?

Recommended Posts

Posted (edited)

I'm waiting for someone to come and make this! A system that Boots up only to * ok * not a cart but possibly a peb card.

And uses all my existing PEB cards - speech / printer / SAMs card / dsk contr

2 really great flavors of Forth already exist. But to have it expanded to further hardware would be super!

 

Edited by GDMike
  • Like 1

Share this post


Link to post
Share on other sites
23 minutes ago, HOME AUTOMATION said:

Modify the boot EPROM on a disk controller.:cool:

Can it address more than 4K or would  need to be paged?

Share this post


Link to post
Share on other sites

I am thinking about Stuart's 9900 board for this job.

  • Confused 1

Share this post


Link to post
Share on other sites

I looked it up...I have heard of this before I just forgot what it was called...

But I'm really liking the Disk controller eprom change.

 

Share this post


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

Can it address more than 4K or would  need to be paged?

 

8 KiB (>4000 – >5FFF) can be addressed before any paging would be necessary. Even with 8 KiB available, I believe space is pretty tight in disk controller DSRs.

 

...lee

  • Thanks 1
  • Sad 1

Share this post


Link to post
Share on other sites

In the meantime I'm working with tiForth. Why? I want to experiment with the cart port and forth with the Supercart. I'd like to see if storage of words is possible, PLUS I have a SAMs card and I don't want to lose that accessory.  But I'm not sure if I can dig up any SAMs code that would work in tiForth to use in a similar fashion as FB forth, TurboForth.

I cranked up TIF yesterday and what fun it is.

  • Like 1

Share this post


Link to post
Share on other sites

I am pretty sure that Lee worked with Willsy on a version for FB Forth.

 

Here is a version for Camel99 Forth that is in Forth. That might help you in your own study. (?)

 

You will need the CRU block loaded.  

 

https://github.com/bfox9900/CAMEL99-V2/blob/master/LIB.ITC/SAMSFTH.FTH

 

It works by creating multiple 64k segments.  You set the segment to use, with n SEGMENT where n is the segment number.

 

Then you can access bytes and words with special words. [email protected] means char fetch "paged".  But for the programmer it is like [email protected] but for SAMS.

 

you need to define 

 

: BOUNDS. OVER + SWAP ;  

 

and 0SBO can be replaced with 0 SBO

I think UM/MOD is M/MOD in Ti Forth (?)

 

Ask me about anything else or maybe Lee will answer faster cuz I am on vacation.

  • Like 1

Share this post


Link to post
Share on other sites
19 hours ago, GDMike said:

I'm waiting for someone to come and make this! A system that Boots up only to * ok * not a cart but possibly a peb card.

And uses all my existing PEB cards - speech / printer / SAMs card / dsk contr

2 really great flavors of Forth already exist. But to have it expanded to further hardware would be super!

 

I’m imagining replacing the ROMs. You would need to investigate all the ROM addresses used in TI FORTH.

 

For instance, the SCAN routine. Any GPLLNK calls like BEEP. Any XMLLNK calls like floating point. Any XOP. 

 

These would have to be dealt with, either by preserving that portion of the ROM, or rewriting that part inside FORTH.

 

Then  you would have to check for similar things in the disk controller DSRs.

 

Also there are memory addresses in PAD that would retain their original meaning. 

 

You would need your own interrupt routine, but that’s a sweet opportunity. 

 

Lee’s fbFORTH uses 4 cartridge banks. It would be great if some of that moved into 16-bit ROM with the rest in I dunno. Maybe the ROM could work as 4K banks at >1000.

 

 

  • Thanks 1

Share this post


Link to post
Share on other sites

There was a complete ROM listing made by Lee and others awhile back with comments I believe. 

Share this post


Link to post
Share on other sites

Is it a possibility to cut a couple pins on existing ROMs, then solder some type of low profile headers to a board that attaches to the ROMs and allows a switch to take place between them? 

I think it's probably pretty tough to remove those ROMs but not too bad to solder to each pin??

 

Share this post


Link to post
Share on other sites
4 minutes ago, GDMike said:

Is it a possibility to cut a couple pins on existing ROMs, then solder some type of low profile headers to a board that attaches to the ROMs and allows a switch to take place between them? 

I think it's probably pretty tough to remove those ROMs but not too bad to solder to each pin??

 

Yes, see Thierry's instructions for replacing console ROMs.

 

 

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)

Could new ROM/board able to be flashed with updates? Forth has an interactive shell that can be used so powerfully for calling routines such as a DOS shell format, Dir..etc.. is anyone else excited? 

TIPI would run sweet

Found it..

http://www.nouspikel.com/ti99/titechpages.htm

Edited by GDMike

Share this post


Link to post
Share on other sites

From reading that article regarding eeprom placement, it doesn't look as bad as I thought...it's bad...but not as bad..I'm wondering if there is room for using sockets on those ROMs? 

Share this post


Link to post
Share on other sites
5 hours ago, TheBF said:

I am pretty sure that Lee worked with Willsy on a version for FB Forth.

<snip>

I think UM/MOD is M/MOD in Ti Forth (?)

 

Ask me about anything else or maybe Lee will answer faster cuz I am on vacation.

 

Yes, I worked a bit with @Willsy on SAMS. Mostly, though, I lifted and modified his code—with his permission, of course..

 

UM/MOD is U/ in TI Forth and fbForth.

 

I might answer, but, this week, at least, I will be slow—I am preparing for a wine tasting I will be presenting on Sunday afternoon. |:)

 

...lee

  • Like 1
  • Thanks 1

Share this post


Link to post
Share on other sites
14 hours ago, FarmerPotato said:

<snip>

Lee’s fbFORTH uses 4 cartridge banks. It would be great if some of that moved into 16-bit ROM with the rest in I dunno. Maybe the ROM could work as 4K banks at >1000.

 

fbForth in 16-bit ROM would certainly be nice. There might be one or two timing issues to address. The speech routines come to mind.

 

Using 4 KiB ROM banks would be quite another matter, however. The dictionary in the ROM kernel would need to be redesigned because it currently relies on the 8 KiB bank size to keep all the word headers and support code for searching the dictionary in one bank. The amount of code involved exceeds 5 KiB.

 

...lee

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)

Yes sir. I think forth would make an excellent choice here. I have a machine ready for the challenge...I just need a step by step..if someone makes the FOrS(forth opr sys) I'd be happy to drop it in!!!

Edited by GDMike

Share this post


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

 

fbForth in 16-bit ROM would certainly be nice. There might be one or two timing issues to address. The speech routines come to mind.

 

Using 4 KiB ROM banks would be quite another matter, however. The dictionary in the ROM kernel would need to be redesigned because it currently relies on the 8 KiB bank size to keep all the word headers and support code for searching the dictionary in one bank. The amount of code involved exceeds 5 KiB.

 

...lee

What about moving bank 0 into ROM at >0000 while requiring the cartridge to be at >6000 for the other banks?

Along with fast 32K inside the console, this would make a pretty mean FORTH machine.

 

 

 

 

Share this post


Link to post
Share on other sites

My cross compiler can make an image pretty simply. I would need to split the odd/even data into two files and declare my variables correctly in ram.

 

what is the best format for rom burners?  I used to use Intel HEX in the Stone Age.

 

i would need code for the current interrupt handler integrated into the image eventually but for a start I could maybe just build Camel99tty that communicates on the com port.  

It's not bullet  proof yet when using the file system but we could get a boot "ok" 😊

 

I think in 16k bytes I could incorporate core Forth plus ANS files, block files, programmer tools and the assembler and my rs232 interface.

 

Not a bad start.

 

it would cool to use 2 8K battery rams instead so we could make a proper interrupt table.

 

but you can make a prefab table that jumps to RAM addresses in upper Ram so they can be programmed after the image is locked in ROm.

 

this sounds like fun.

 

anybody know what format is used for rom files for Classic99 or are they compiled as source in the program?

Share this post


Link to post
Share on other sites
7 hours ago, FarmerPotato said:

What about moving bank 0 into ROM at >0000 while requiring the cartridge to be at >6000 for the other banks?

Along with fast 32K inside the console, this would make a pretty mean FORTH machine.

 

I am sure we could work out something. There is obviously a lot to consider besides the Forth code—the vectors at >0000; the XOP vectors at >0040; system routines like KSCAN, ISR, cassette tape I/O, XMLLNK, (GPLLNK), DSRLNK. I put GPLLNK in () because it invokes the GPL interpreter, which is a significant part of the system ROM, and we would probably need to remove any GPL access. The only use made of GPLLNK in fbForth 2.0 is at startup for loading the system font(s); for the BEEP and HONK tones; allowing use of GPLLNK by Forth; and the MG DSRLNK for disk I/O. If we eliminate GPLLNK , we (I) would need to load the system font(s) and manage the two system tones with our own ALC. DSRLNK would need to be rewritten in ALC that does not invoke the GPL interpreter (easy enough without cassette I/O). If we want cassette I/O, we would have to keep that routine and figure out how to include it in DSRLNK .

 

Sorry for all the rambling, but there is a lot to consider.

 

...lee

  • Like 1

Share this post


Link to post
Share on other sites
Posted (edited)

Of course. I think if anything, it Should be thought out..look at all the stuff..

I'm hoping to make good use of cassette. Hopefully this won't tie down any ports unavailable..

Wondering if different flavors of forth could be options? I tend to lean towards TF myself... but that's just me.

TI should have made this computer a Forth OS from the beginning!

But other than my forth wish list, F18A would be nice.  Does anyone have another video enhancement coming?

 

Edited by GDMike

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.

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...
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...