Jump to content
IGNORED

TIPI - TI-99/4A to Raspberry PI interface development


Recommended Posts

So, @jrhodes asked if it was possible for TIPI to act as the cassette storage device as well. I always assumed due to some mis-reading of the console rom, that the GROM DSRs were looked at first, and then the expansion card ROMs... but that isn't true.

 

The console DSRLNK does go to expansion cards first, and then falls back on the GROM list. 

 

So, it is totally possible with a small change to the TIPI DSR ROM to include a device name for CS1, that the TIPI can service the PAB request first. And the TIPI can reject the request if not configured for it, return the to DSRLNK to resume scanning for other devices that might service CS1 and the real GROM CS1 device will be found and allowed to continue. Just like when DSK1 directories are not mapped...

 

There is at least one program that only supports CS1. Milton Bradley's Hangman. 

 

My implementation just delegates to TIPI's handling of a file in the TIPI. filesystem. All the weird things like loading Tidbit source as a BASIC Program Image file works for CS1 if that's what you map it to. There will be no prompts to rewind :)

 

I've added a setting in PI.CONFIG - CS1_FILE which should be set to the file name you want CS1 to read or write to. If it is empty, then no mapping is made, and the GROM DSR will kick in. I've updated TIPICFG so you can set this from the 4A easily. I have also updated the TIPI Web UI. There are some screen shots below. I'd be interested if anyone has a more intuitive recommendation for managing this. Maybe I'll through the word 'file' in there a few times to make it more clear it's not the same as all the DSK dir mappings. 

 

Feedback, and other thoughts are welcome. 

 

(Use of this feature will require a TIPI ROM upgrade, and TIPI services upgrade. TIPI services upgrade will not require the ROM upgrade, but the CS1 feature will simply not work.)

 

---------

Here if CS1 is unmapped, you'll see a text box next to it so you can set the CS1_FILE mapping to whatever name or path you want. This should be a TI type path with '.' for directory separators, etc... and it should represent a file, not just a directory like the other mappings. Enter something, hit 'save' and your next interactions with CS1 will create or use that file.

 

Screenshot2023-07-29200752.thumb.png.ef14857c178e034b900de8929467b37e.png 

 

Alternatively you may navigate to a file in the TIPI filesystem, select it, and then use the Action dropdown to choose 'Map to CS1', and submit... 

 

Screenshot2023-07-29200216.thumb.png.65bef452205564132f1ec78770b31d49.png

 

 

When it is set, you'll see the value. To unset the mapping, just click the red X next to it.

 

Screenshot2023-07-29200701.thumb.png.82e49940d03195b2850d4fb91e90c4f7.png

 

 

  • Like 6
Link to comment
Share on other sites

If you are referring to adding DSK5-DSK9 to the TIPI DSR EPROM, coexistence will depend on the user's configuration and their program usage.  A few thoughts come to mind: 

 

With the /4A, the Horizon Ramdisk and its "partitions" are typically formatted starting with DSK5. to fully avoid conflicts with the floppy controller devices DSK1-4.  Devices DSK6-9 and DSKA-Z are also available to the Ramdisk.  If you are looking to expand the TIPI to emulate DSK5-9, the Horizon Ramdisk user can avoid conflicts by using Ramdisk drive letters A-Z.  Programs that are CRU-aware - such as FC or DU2K - become important for level 2 IO if there is a need for a Ramdisk device to use DSK5-9.   I don't know if any /4A users with both the TIPI and Ramdisk hardware use programs that do not allow DSK A-Z, with a need for Ramdisk drives 5-9.

 

The Geneve's boot EPROM reserves DSK6. for a Horizon Ramdisk boot device.  I cannot think of any other conflicts, since the Geneve OS manages its devices internally without utilizing the on-card DSR EPROMS. Theoretically, if the TIPI DSK6. mapping is not enabled and the TIPI DSR fails through to the next device, I doubt there would be any issues with the bootup sequence. 

 

  • Like 9
Link to comment
Share on other sites

  • 4 months later...

@jedimatt42 Would it be possible to have added into TIPI's web interface, a option to make a .dsk image and download it to PC, from a selected directory containing TI files and a Sectors file?

 

I.E. if you had a folder name TEST with PROGRAM and a Sectors file, you could download a TEST.dsk file that should contain all TI data, whether stored in TI files/programs or raw on the disks sectors.

Link to comment
Share on other sites

On 12/27/2023 at 8:07 AM, jrhodes said:

@jedimatt42 Would it be possible to have added into TIPI's web interface, a option to make a .dsk image and download it to PC, from a selected directory containing TI files and a Sectors file?

 

I.E. if you had a folder name TEST with PROGRAM and a Sectors file, you could download a TEST.dsk file that should contain all TI data, whether stored in TI files/programs or raw on the disks sectors.

That would actually be a great added functionality. 

  • Thanks 1
Link to comment
Share on other sites

On 12/27/2023 at 2:07 PM, jrhodes said:

@jedimatt42 Would it be possible to have added into TIPI's web interface, a option to make a .dsk image and download it to PC, from a selected directory containing TI files and a Sectors file?

 

I.E. if you had a folder name TEST with PROGRAM and a Sectors file, you could download a TEST.dsk file that should contain all TI data, whether stored in TI files/programs or raw on the disks sectors.

 you are going to be limited to the size of disks for the data in the directory this seems to be a complexity

  • Like 1
Link to comment
Share on other sites

7 hours ago, arcadeshopper said:

 you are going to be limited to the size of disks for the data in the directory this seems to be a complexity

Not necessarily. The utility would have a disk size specification switch (90, 180, 360) and it would write as many files sequentially as would fit on the disk. It would then be up to the user to make sure the directory used has the correct number of files in it. Obviously such a utility would likely need to perform a format procedure first as well, something Matt might actually be considering. 

 

  • Like 1
Link to comment
Share on other sites

TIPI already has a total sector size setting, but sure a drop down to pick wouldn't be hard. If a .sectors already exists, It should respect that.

 

The harder part is merging files in the sector dump with the loose TIFILES. So I'd probably have to provide a selection form, with defaults selection of files to override the sector dump based on timestamp.

  • Like 3
Link to comment
Share on other sites

  • 3 months later...

Quick question on TIPI VDP memory usage: Does the TIPI DSR use VDP memory besides the memory specified in the PAB header or record/file buffer?

Is there anything in the TIPI DSR that writes to the VDP >0980 memory range?

 

Reason I'm asking is because I'm refactoring VDP memory usage in Stevie. I'm trying to make free space for FIO level 3 opcode 5 loading EA#5 image.

Works fine with ROS (which is not using any VDP memory at all I guess). And having some issues with especially the TI Disk Controller and a little with the TIPI controller as well.

 

Edited by retroclouds
Link to comment
Share on other sites

The TIPI DSR only uses the VDP memory that your PABs tell it to use. 

 

If at crubase 1100 it will adjust the system VDP stack on console power up/reset just like a TIFDC does. But it does not use that space. It does this for compatibility with The Missing Link.

 

 

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