Jump to content
IGNORED

The Missing Link and Classic99


Recommended Posts

 

There seem to be a couple of issues here:

  1. All character sets for the TI-99/4A are 8 bytes/character. The reason CHARA1 files have the characters stored that way is that they are directly loaded to the VRAM Pattern Descriptor Table (PDT).
  2. The repository for the default 8-byte character patterns is in console GROM, where they are stored as follows:
  • "Standard Character Set" (8 bytes per character)

  • "Small Capital Letters Set" (7 bytes per character)

  • "Lower Case Set" (7 bytes per character)

Most applications on the 4A do not use the "Standard Character Set" because the character rows all touch each other. I think the TI-99/4 is the only platform that uses it. On the 4A, the other two character sets are used and, because the top row byte of each character is always 0 to allow for the inter-row space, the repository does not need to store the top row. The GPL load routine, however, must (and does) zero the first byte of each character's PDT location before loading the remainder of the character.

 

The problem, then, with using character sets defined in CHARA1 files for adaptation to the GROM 7-byte-per-character repository is that many of them use descenders for lowercase g, j, p, q and y that extend into the last byte, with all the other characters blanking that last byte but not the first byte. The blanked byte is backwards from the usual GPL load. If such character sets were desirable for RXB, you could store the two character sets with the last byte of each character's definition removed, change the load routines to blank the last byte and patch the g, j, p, q and y last bytes in VRAM after the load.

 

I think Tony (@Gazoo) said his complete character set for the multi-program cartridges he's been posting uses TI Writer's font, which has all the characters (including those with descenders) in a 6x7 matrix, which would allow for either the first or last byte to be blanked and the font stored in GROM as 7 bytes/character per your space requirements.

 

...lee

Yea XB used 7 bytes per Character for the lower case and in RXB I wanted to fix the giant crappy looking ones they used in normal XB upper case.

 

Presently the 512K multicart that Gazoo sent me works but damned if I can figure out where anything is at all.

 

Any chance someone has a test file of the definitions?

Link to comment
Share on other sites

Check out the lower case characters in turbo forth. They line up perfectly with TIs upper case set and they have descenders. User it if you want. The definition data is in initialise.a99 i the second bank of the source code on the tf website.

Thanks never been to that site?

Link to comment
Share on other sites

Yea XB used 7 bytes per Character for the lower case and in RXB I wanted to fix the giant crappy looking ones they used in normal XB upper case.

 

Presently the 512K multicart that Gazoo sent me works but damned if I can figure out where anything is at all.

 

Any chance someone has a test file of the definitions?

 

Here's the TI Writer disk with the CHARA1 file I was talking about. Just remember that he first 6 bytes are E/A5 loader information, so the actual font starts at byte 6. And, the font is for all ASCII characters (0 – 127), with the last character shy 6 bytes, which are usually assumed to be all FFh:

 

tiw_v5.dsk

 

...lee

Link to comment
Share on other sites

Yea XB used 7 bytes per Character for the lower case and in RXB I wanted to fix the giant crappy looking ones they used in normal XB upper case.

 

Presently the 512K multicart that Gazoo sent me works but damned if I can figure out where anything is at all.

 

Any chance someone has a test file of the definitions?

 

It's because there's all sorts of trickery used to make the cart work the way it does. :) I am The Great Gazoo, after all. :-D

 

Tell me what you're looking for and I'll tell you where to find it.

 

Gazoo

  • Like 1
Link to comment
Share on other sites

  • 7 months later...

It looks like Classic99 is not liking TML when it comes to saving programs...

I get I/O ERROR 63 anytime I try to save a bit of code to disk from within TML. MESS has no issue with it however. Any thoughts on this?

One of the main attractions of Classic99 is the ability to paste in code directly into the emulator, which is essential if I'm using TidBit. Unfortunately there is no such facility with MESS, so I'm stuck. I really don't want to write XB code straight into the TI :(

Link to comment
Share on other sites

Unfortunately there is no such facility with MESS, so I'm stuck. I really don't want to write XB code straight into the TI :(

 

I don't want to reveal too much for now, but maybe you'd like to wait a few days ... something big is coming; not in MESS - but in TIImageTool.

  • Like 1
Link to comment
Share on other sites

Ahh, Great Gazoo! With all your trickery and knowledge, I have a dream that I'm not sure you or anyone else with their wizardry could accomplish...

 

The ULTIMATE (for me) cartridge would automatically come up with COMMAND DOS running, it would of course check DSK1 for the CHARA1 file and for the AUTO-BAT file. But since this thing would be on an Uber Cart, it would also be able to run E/A 3 as well as E/A 5 programs directly from the command prompt with the LOAD or FIX80 command... or within a BATCH file. And since it's in an Uber Cart, wizardry would be necessary to get 4A DOS / COMMAND DOS to load programs from the cartridge itself, like DSK2PC, DM2K, BA-WRITER (80 column version) etc. A cartridge designed like this could be configured in so many different ways by the end user that it boggles the imagination.

 

The beauty of this type of thing is it could have most of the major utilities on cartridge, and the user specific ones on disk/image. Finally, it would be a REAL DOS environment for the TI, but easy to customize.

 

TIme to wake up and go to work...

Link to comment
Share on other sites

It looks like Classic99 is not liking TML when it comes to saving programs...

I get I/O ERROR 63 anytime I try to save a bit of code to disk from within TML. MESS has no issue with it however. Any thoughts on this?

One of the main attractions of Classic99 is the ability to paste in code directly into the emulator, which is essential if I'm using TidBit. Unfortunately there is no such facility with MESS, so I'm stuck. I really don't want to write XB code straight into the TI :(

I just checked and had no problems saving an XB program using TML. Check that you can save a program running under XB normally. You're probably using TIdbit. Try a simple program using the XB editor and see if you can save that when using TML.

Link to comment
Share on other sites

I just checked and had no problems saving an XB program using TML. Check that you can save a program running under XB normally. You're probably using TIdbit. Try a simple program using the XB editor and see if you can save that when using TML.

 

I have tried everything, including reinstalling Classic99 but still I get the same error, even with just a single line regular statement under plain XB.

I don't think this is an issue with TML at this point, but rather something to do with my computer. I just don't understand what could possibly trigger that error because otherwise Classic99 is working just fine.

 

This is really bizarre...

Link to comment
Share on other sites

At times I have had the wrong disk parameters set with Classic 99, which resulted in much wailing and gnashing of teeth until I finally figured it out.

 

I can save to FIAD directory, but not to a disk image. Where do I find these parameters? There is no option for them that I can see...

Link to comment
Share on other sites

Disk>DSK1 then go right to the disk name>click to get a menu with the file options.

 

I always use FIAD; I believe there is something in the docs about disk images not being quite right.

I think you should always be able to save a Basic or XB program, so these options may not even apply. Most of the file options have to do with saving in windows format or DV80 and the like.

Link to comment
Share on other sites

Disk>DSK1 then go right to the disk name>click to get a menu with the file options.

 

I always use FIAD; I believe there is something in the docs about disk images not being quite right.

I think you should always be able to save a Basic or XB program, so these options may not even apply. Most of the file options have to do with saving in windows format or DV80 and the like.

 

Come to think of, I always save to one of the FIAD DSK folders when coding... This may have been an old issue that never came up for me before. Hmmm...

Can anyone here verify that they can save to a DSK image with Classic99?

 

EDIT: I tested saving a program to a DSK image on my desktop computer and I get the same I/O error, so I think this is a Classic99 issue...

Link to comment
Share on other sites

Classic99 (AFAIK) only supports sector writes to disk images, so it depend on how the save program code in the TI XB ROMs are implemented.

From whatsnew.txt:

16 Jan 2013
-Fix SBR Information request to correctly return number of sectors, and properly read record count as 16-bit. This fixes Archiver and compressed files!
-P-Code card works (previous fix to 'X' instruction fixed it)
-Implement disk 'write protect' option
-Implement raw sector writes to image disks

 

There are various other notes in the file, but I don't see any further updates on sector/image writes in the file.

 

I have a dim and distant memory that Tursi *may* have added the ability to do writes to disk images, but you have to explicitly turn it on; it's off by default. I could be imagining the whole thing though!

 

Section 8.3 in the classic99 states:

 

8.3 Disk Images (*.DSK)

These are images of diskettes made popular by PC99 and V9T9. These images come in various sizes, with the

most common sizes being 90k, 180k, and 360k. The TI file system allows 127 files on a single disk, with no

subdirectories.

Classic99 allows you to mount V9T9 (DSK) or Win994A (TIDISK) disk images by selecting Image for the type,

and the selecting the disk file. It does not support PC99 files, which are also confusingly called DSK, and you

may see corrupt data if you attempt to read one.

Disk images are supported for reading only, attempts to write to the disk image will cause errors.

 

I don't know how up-to-date the manual is with the software!

Link to comment
Share on other sites

It looks like Classic99 is not liking TML when it comes to saving programs...

I get I/O ERROR 63 anytime I try to save a bit of code to disk from within TML. MESS has no issue with it however. Any thoughts on this?

One of the main attractions of Classic99 is the ability to paste in code directly into the emulator, which is essential if I'm using TidBit. Unfortunately there is no such facility with MESS, so I'm stuck. I really don't want to write XB code straight into the TI :(

 

"Debug log". :) Let's see what went wrong!

Link to comment
Share on other sites

Yes, Classic99 can only write to FIAD folders... not only has this never changed, but anytime you get an unexplained disk error, just open the debug log. It will usually tell you in plain English why the operation failed, rather than trying to guess and decipher the numbers. ;)

 

Raw sectors writes are /not/ file writes. Raw sector writes mean the low level direct sector access routines, like a sector editor would provide.

 

The manual is only a couple of versions behind, and only for little things that don't affect major operations. ;)

Link to comment
Share on other sites

My apologies for not checking the manual first. I really thought this was somehow a new issue as I had never previously attempted to save to a DSK image, ever... It just never came up unbelievably!

The obvious workaround for me was to save to a FIAD, then copy the file to a DSK image using TiDir. Since this only needs to be done for the final version of a given program, it's no big deal.

Link to comment
Share on other sites

Eventually I'm going to bite the bullet and write the code, so people stop going in circles on this one. But I really wish you guys would just stop using disk images (at least with emulation). Why do you /want/ the limitations? That was never the intent of the TI's design - it has an open file device interface. I figured at least with HDX getting out there people would see it's not a Classic99 feature but a generic way to expand the real TI... but that never quite happened.

 

Alternately, if you not only want but LOVE the limitations, you can now set Classic99 to TI disk controller mode (still via hacking the INI file) and it will happily read/write/mangle your images, but only on DSK1-DSK3 and only up to 180k. I did that for Pascal (and, that made me wonder if it was partly responsible for pCode not working for your test, I did it before my test but hadn't released it.)

Link to comment
Share on other sites

DSK images are a good way to exchange programs between our emulators. MAME/MESS will certainly only support disk images, and personally, I very much favor image files over "naked" TIFILES for many reasons. Just my opinion - we know that there are different points of view. :-)

Link to comment
Share on other sites

I may be the odd one out here, but I prefer NOT being able to save to DSK files in Classic99 for just for the safety, archival and purity aspects. That being said, I agree with Tursi 100% on this one... the FIAD format is so much better. It's been mentioned before... you will not hit any 127 disk-type file limit, you will not have any storage size limitations either, other than the physical size of your PC's HD and even that can be circumvented with Dropbox.

 

If you use an HDX modifed RS-232 card... OH MY, the world opens up! You'll be able to share Classic99's FIAD files on your TI, you'll have sub-directories, and twice the loading speed.

Link to comment
Share on other sites

the FIAD format is so much better. It's been mentioned before... you will not hit any 127 disk-type file limit, you will not have any storage size limitations either, other than the physical size of your PC's HD and even that can be circumvented with Dropbox.

 

This sounds somewhat peculiar in my ears ... don't understand me wrong, I do have full respect for this idea, but I would also ask for understanding that I and the other MAME/MESS team consider such kinds of enhancements definitely out of bounds of emulation. We invest a lot of efforts to reach an experience that is as indistinguishable from the original as possible. For that reason, it is an objective to encounter the same limitations and flaws as the original system, the same timing, and the same overall look and feel. This explains why I even once added the AlphaLock issue with joystick up (you can turn it off, of course).

 

Following that point of view you may possibly agree that disk images make sense.

Link to comment
Share on other sites

I fully embrace the concept of "Different strokes for different folks". Some guys are purists and like stock only, I'm a retro-mod kind of guy. "Back in the day", many people were upgrading their TI's with the alpha lock modification, buying 80 column cards, non-standard disk controllers, AMS cards, clock cards, etc. I really don't remember people talking about "TI purity" back then, so FOR ME, that was my influence, now skip ahead a few decades and I want to get all the cool toys I did not have the first time around. My personal fun with the TI is expanding it as most would have done if given the opportunity back then.

 

I love the design of the TI, there are just so many different ways to expand and grow... or not. It's up to the individual. Yes, I do agree, disk images make sense for various reasons and in some circumstances, in other applications, they are a pain in my butt and a limitation I don't care to deal with in normal operations, but again, that is just my opinion. :)

 

I am so pleased that you and almost everyone here recognizes that individuals have different wants, needs, and points of view. I don't want to get negative in tone here, but I'm truly disheartened when I meet people who think, "it's their way or the highway" or that their opinion is "just the way it is" and anyone who dares to disagree is stupid or wrong".

Link to comment
Share on other sites

 

This sounds somewhat peculiar in my ears ... don't understand me wrong, I do have full respect for this idea, but I would also ask for understanding that I and the other MAME/MESS team consider such kinds of enhancements definitely out of bounds of emulation. We invest a lot of efforts to reach an experience that is as indistinguishable from the original as possible. For that reason, it is an objective to encounter the same limitations and flaws as the original system, the same timing, and the same overall look and feel. This explains why I even once added the AlphaLock issue with joystick up (you can turn it off, of course).

 

Following that point of view you may possibly agree that disk images make sense.

 

Yes, for looking backwards disk images absolutely make sense. For looking forwards they only hold us back.

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