TI-99/4A FAQ: Loading Assembly Language Programs

What do I need to load assembly language programs?

The big requirement is RAM, assembly language programs need the extra 32k memory expansion to load into since they are programmed for that memory space.

The basic playground loader uses the teeny amount of cpu RAM in the console to leverage loading assembly in TI basic but that’s limited to very small programs. TI basic has no built in ability to access expansion RAM.

Most games from TI on cartridge for instance are written in GPL and run from GROM carts. They can be copied to RAM and run from there but it has to be the 32k expansion RAM. This is how we run GROM games from a ROM cartridge board such as the flashROM99.

The Mini-Memory cartridge includes 4k of battery backed ram* that can be used for small assembly language programs. See Mini Memory entry for more details. This can NOT load programs into 32k like the editor assembler.

The Editor assembler cartridge gives you the loader to load assembly programs.  Assembly programs come in two varieties. DF/80 object files and PROGRAM image programs. In the EA cartridge you pick option 3 for loading DF/80 object files and option 5 for loading PROGRAM image programs. 

DF/80 object files tend to have a start program name defined that should be included in the documentation for the program,  most programmers used START as the program name for starting the program so try that if you don’t have the info on the specific program name to use.  After you load the file you will be prompted for the program name.

EA option 5 programs start automatically

Editor assembler sets up a environment with routines that can be called by programs. It also has add on routines for TI basic while the cart is installed. Both require 32k expansion RAM to do this.

Extended basic gives you the ability to load SOME assembly natively.  People have written loaders for extended basic that create the editor assembler environment that many programs require to load correctly.

These days with sidecar 32k availability for a reasonable price and SAMS cards for less than $100us and the FinalGrom99 sd card cart you can have a full assembly language capable TI for not much investment.

Also the TIPI DSR rom contains an EA option 5 PROGRAM loader that can be called from basic with CALL TIPI(“DSKX.PROGRAMNAME”) it can also load programs from http sites!

TI-99/4A FAQ: Cassette FAQ

I don’t have a cassette cable to store/load programs how do I get one?

    • Build one
    • Buy one here:

Can I use any cassette drive/audio source?

    • In short Yes you can. As long as the volume is loud enough.

There is an official TI program recorder but it is a standard audio cassette player, any player with the proper connections (mono audio out, mic in and remote) will work with the TI. Good tips on that link for setting up your recorder with the correct volume etc..

I have had success with a stereo to mono splitter on my PC and playing WAV files out using VLC to my TI

Cassette Software resources:

      • WAV files are here: http://ftp.whtech.com/Cassettes/
      • Cassettes are also available on arcadeshopper.com
        Aquarius +
        Aquarius +
        Aquarius +
        $250.00

How do I load a cassette program?

in TI BASIC and EXTENDED BASIC you type OLD CS1 and hit enter. You will be prompted to rewind the tape then hit PLAY etc..

How do I save a cassette program?

in TI BASIC and EXTENDED BASIC you type SAVE CS1 and hit enter. You will be prompted to rewind the tape then hit RECORD etc..

Other programs?

Programs such as Tunnels of Doom, Adventure, Video Chess etc let you load and save from cassette. They will prompt you the same as Basic does.

Man this is slow and unwieldly!

That’s what we all said when we went and got a disk system for our TI’s 🙂 If you are tired of cassette unreliability and slowness  Get a Expansion Box, TIPI or Nanopeb and use disks instead..

 

 

TI-99/4A FAQ: Monitor and TV hookups

How do I hook up my TI to a modern tv/monitor?

The TI-99/4A NTSC model released in the USA and other countries supports a standard 5 pin DIN connector.  Many 8 bit computers of the era all share the same cable, Atari 800, ColecoVision, Coleco Adam, C64 are some examples.

The TI-99/4A PAL model relased in Europe and other PAL countries supports a 7 pin DIN connector.

NTSC: Composite cable

 

VGA:  (works on both PAL and NTSC consoles)

      • F18A VDP replacement from https://dnotq.io/ allows you VGA out from your TI 
        • For those interested in getting a F18A VGA VDP replacement for your TI-99/4a here’s the latest status and updates:  https://dnotq.io/f18a/f18a.html
        • I periodically have these in stock:
      • PICO 9918a replacement from https://www.tindie.com/products/visrealm/pico9918/ also available here at arcadeshopper.com   more info https://github.com/visrealm/pico9918
      • VGA to HDMI adapters have been used to make this work with HDMI only displays. http://atariage.com/forums/topic/234226-hdmi-for-the-ti/ I have these in my store at arcadeshopper.com
      • The audio is still output through the 5pin DIN video port so you will still need a composite cable with at least the audio pins connected to a speaker if you install a F18A you can buy these at arcadeshopper.com

Convert NTSC console to PAL

TI-99/4A FAQ: Console Version Differences

What are the differences with the different versions of the console?

There are four major console variations.

TI-99/4

In June of 1979 Texas Instruments released the TI99/4 personal computer, with a starting price of $1500, which included a monitor. This was due to the fact that the Texas Instruments modulator, used to hook the computer to a TV, could not pass the RF standards. Over 20,000 of these models were produced. Peripherals were all designed to be connected to the side expansion port making your desk space requirements excessive.

TI-99/4A

https://en.wikipedia.org/wiki/Texas_Instruments_TI-99/4A

The Texas Instruments TI-99/4A is a home computer released in June 1981 in the United States. It is an enhanced version of the TI-99/4 which was released in late 1979.[2] The TI-99/4 and TI-99/4A are the first 16-bit home computers, using the Texas Instruments TMS9900 16-bit CPU.[3] Both models include hardware support for sprites, using TI’s own chips, and multi-channel sound, making them some of the first home computers to include such custom coprocessors, alongside the Atari 8-bit family also introduced in 1979.

The TI-99/4A remained mostly the same as its predecessor, with the major changes being a full-travel keyboard to replace the calculator-style keys, an improved graphics chip with support for bitmap modes, and a cleaner method of adding expansion cards. The price was also half that of the original model. Texas Instruments supported the 4A with a line of peripherals, including a speech synthesizer, and a “Peripheral Expansion System” box to contain hardware add-ons.

TI-99/4A cost reduced

June of 1983 saw the release of the all plastic, “Beige” version of the TI-99/4A. This helped TI lower production costs and they hoped the beige color would fit into the home more comfortably. Some other minor changes were also made. Some contain a new power supply some have the original power supply. The power switch was also moved from the front to the top with the LED being removed. Some machines have the original LED bent back inside of the case but still available, others the LED is not installed.

For the most part this computer was the same as the black and silver model, and could use all the same add-ons.

TI-99/4A QI

In August of 1983 TI released the TI-99/4A QI. Though this name was not official for the console, it was what the motherboard was designated. QI stood for Quality Improved. No visual changes were made to the exterior of the console, and in fact they are very hard to distinguish from the beige models. On the other hand, major changes were made to the internal components of the QI.

One change that was made that created major grumbling was TI’s decision to change the internal workings to lockout unlicensed ROM cartridges. This was done to keep other 3rd party companies from producing cartridges for the TI-99/4A. Not all QI consoles had this “feature”, and even non QI, later beige consoles may have. It is easy to determine if you have the lockout or not. Look at the first screen (the one with the color bars) when you turn on the console, if you show a copyright date of 1981 you do not have the lockout, but if it shows a copyright date of 1983 then you do.


Screen shot showing ver 2.2 / 1983 copyright.

According to John Creviston Jr at one time, the regular beige models and the QI models, were produced at the same time in the TI plant. This would not have posed a problem as all parts for both types are interchangeable in the beige console.

Taking apart a QI console will show that it is one. But the easiest way to determine if a beige console is a QI or not is to just look at the expansion slot.

The top expansion slot pictured on the right is a QI slot. Notice that the grounding fingers are silver in color, while the “regular” slot’s fingers, pictured below, are brass in color.

Upon disassembling the console majors changes in the design of the motherboard and power supply will be evident. The first thing you might notice is that there is a shield over the keyboard. Upon removal of the motherboard it will also be noticed that there is no shield on the top of the motherboard (component side). I must admit that the power supply and motherboard look very nice. TI did indeed up the quality of construction of these products.


Another shot of the expansion slot on the QI motherboard.

Since the QI does not have a top metal shield, where the heat sink is attached on the non-QI motherboards, an actual heat sink is placed on the TMS9918A video IC. This is the only IC on the QI motherboard that has a heat sink

 

The new power supply design is very clean and almost looks like it could be a switching supply.

Also notice that the socket for the transformer plug only contains two pins. Where the old power supplies required 5V,8V,and 16v, the QI supply only needs 5V and 16V. You can still use the old transformers with the QI though.

 

As can be seen above there is quite a change in the QI motherboard. The above motherboard is a QI while the the bottom one is the more standard TI 99 motherboard. The idea for the QI design was to try and make the TI-99/4A as inexpensive as TI could. One way to do this was to reduce the number of IC’s required. While the standard motherboard contains 42 IC’s the QI motherboard only contains 35.

To see a large view of the TI-99/4A QI motherboard click here

The QI release also introduced the Mitsumi membrane keyboard which is unreliable at best over time.  See the Keyboard FAQ entry for info on how to determine which keyboard you have.

TI-99/4A FAQ: TI-99/4A Vendors

Vendors:  

http://www.dsapsc.com/what-is-sid.html – SID99 add a SID soundchip to your TI

https://dnotq.io/f18a/f18a.html F18A vga VDP replacement

https://shift838.fwscart.com/ – Geneve keyboard adapters, drive select boards, geneve scart adapters and more

https://www.arcadeshopper.com/ – Software, Hardware, Cables and adapters. TIPI, Flashrom99, SAMS, USB Keyboard adapters, Extended Basic 27 suite, RXB and much more.. new games, multi-carts etc

TI-99/4A FAQ: Floppy Disk drives and formats

Disk formats

On the TI basic has no idea what a disk drive is. It’s the DSR in the controller that gives basic, or other software the ability to use disks. It is basically plug-and-play in 1979, pretty impressive.. Make a new storage device? basic doesn’t care, just as long as the DSR is there.  So most disk formats are logically based on the controller you have.

Ti Disk Formats 

    • 90k SS/SD 40 tracks
    • 180k DS/SD 40 tracks
    • 360k DS/DD 40 tracks
    • 360k DS/SD 80 tracks

Disks that are single density will read/write fine on double density drives.  Also the TI controllers all work fine with DS/DD 360k 40 track drives but only can read/write in their respective SD formats.

TI disk controllers:

  • Texas Instruments Disk controller Sidecar
    • SS/SD 90k
  • Texas Instruments Disk controller (PEB)
    • SS/SD 90k
    • DS/SD 180k
  • Myarc Disk Controller (PEB and sidecar)
    • SS/SD 80k
    • DS/SD 180k
    • SS/DD 180k
    • DS/DD 360k
  • Myarc Hard Floppy Disk Controller (HFDC) (PEB)
    • SS/SD 80k
    • DS/SD 180k
    • SS/DD 180k
    • DS/DD 360k
    • DS/HD 1.44mb (Geneve only HD with 32k ram chip and 9216B installed on the HFDC)
  • Corcomp Disk Controller (PEB and sidecar)
    • SS/SD 80k
    • DS/SD 180k
    • SS/DD 180k
    • DS/DD 360k
  • BWG Disk controller (PEB)
    • SS/SD 80k
    • DS/SD 180k
    • SS/DD 180k
    • DS/DD 360k
  • NanoPEB/CF7 (sidecar) disk emulation formats supported
    • SS/SD 80k
    • DS/SD 180k
    • SS/DD 180k
    • DS/DD 360k
    • NANOPEB 800k (note: No native TI disk controller supports the nanopeb disk size, you’ll have to copy the files to a disk with a format that is supported.)

Disk Managers:

Since the storage software on the TI is DSR based there needs to be an application to format disks, copy files, duplicate disks etc..

  • Texas Instruments disk manager programs
    • Disk Manager cartridge
      • supports only the format that the TI sidecar supported SS/SD
    • Disk Manager 2 cartridge
      • supports only the formats that TI supported on the PEB DS/SD controller..
    • Disk Manager 3 cartridge (prototype)
      • supports DS/DD for the unreleased DS/DD controller
  • 3rd party disk manager programs
    • DM1000 was released from the Ottowa users group in the 1980s and can format up to DS/DD, special versions were created for many hardware devices including the Gram Kracker, Horizon Ramdisk and Cf7/Nanopeb.
    • DM2K is under current development and is updated regularly. It can do 40/80 track DS/DD.  current version is 3.0 and it’s the most versatile disk manager  www.ti99-geek.nl/Projects/dm2k/dm2k.html
    • GDM2K was released to give DM2K functionality on the Geneve in Mdos mode.
    • Corcomp Disk manager was included with Corcomp controllers and could be loaded from the title screen with the stock ROMS
    • Myarc Disk manager was included with Myarc controllers

Disk Emulation:

  • Gotek
    • Gotek drives are inexpensive and available most places including arcadeshopper.com
    • USB flashdrive stores your images
    • Stock Gotek firmware will NOT work with TI and Geneve however,
    • Gotek has been tested with 3rd party firmware on the TI and Geneve (see below)
    • Firmware options: 
      • Flashfloppy firmware – This is the most versatile firmware.. and it is free
        • Supports a massive range of retro computers, synths, and machinery
        • Directly reads and writes many image formats
        • Flexible track layout for Raw Sector Images
        • Extremely configurable
        • Supports TI DOAD (dsk images) directly without conversion and also can use HFE format files
        • many hardware addons including speaker, various displays, rotary and other encoders for selecting disk images
      • HXC firmware 
        • all TI disk images must be converted to HFE format to be used
        • $ per drive to install
  • http://hxc2001.free.fr/floppy_drive_emulator/
    • Cost varies but is around $115 + shipping from EU
    • available in SDCard and USB models
    • all TI disk images must be converted to HFE format to be used

TI-99/4A FAQ: Emulation

Emulation Section:

Windows Emulators:

Linux Emulators:

DOS Emulators:

Multi-platform Emulators:

  • Mame/MESS: http://mamedev.org/ (emulates every version of the 99/4a, the Geneve, 99/8 and more!)
    • https://ninermame.org for TI and Geneve MAME support from the current maintainer Michael Zapf
    • https://atariage.com/forums/topic/313851-ooeygui-v40-released/ The great java based front end for MAME that auto installs the latest TI-centric version and all the support files including carts, disks and roms
  • Java V9t9: http://eswartz.github.io/emul/

Web Browser based Emulators:

JS99er.net: http://js99er.net/

Emulation File Formats:

  • TIfiles file
    • TI Files was the first representation of a TI file in emulation or on a foreign file system. It contains the same information as the file on the TI but also includes a 128byte header (that we only use 16 bytes of) to contain the TI directory information. The original Xmodem implementation by Paul Charlton on the TI attached this header automatically so when you uploaded a file from your TI to some other type of computer (BBS) you could download it again without having to do a conversion or uuencode.
    • TIPI, HDX & Classic99 both support this file format
    • http://ti99-geek.nl/Doc/Ti99_dsk1_fdr.html and https://www.ninerpedia.org/wiki/TIFILES_format for more technical information.
    • TIFILES File Header
      	Byte	Content		Comment
      	0	0x07			Contains the length of the TIFILES string
      	1-7	'TIFILES'			Contains the literal string 'TIFILES' by means of identification
      	8-9	Length in sectors	Number of 256 byte sectors of the file, big endian
      	10	File type		Not the same as the PAB
      		Bit 0			Fixed (0) or Variable (1)
      		Bit 1-3			Not used
      		Bit 4			Protected (meant to prevent copying, largely ignored by 3rd
      					party software.)
      		Bit 5			Not used
      		Bit 6			Display (0) or Internal (1)
      		Bit 7			Data (0) or Program Image (1)
      	11	Records per Sector	number of records per sector for record based files
      	12	Bytes in last sector	Used to determine the true end of the file (0 indicates 256 
      					bytes in last sector)
      	13	Record length		The length per record, as in the PAB
      	14-15	Number records	Number of records in the file if fixed, or number of sectors
      					in the file if variable. Little Endian, which is unusual for the
      					machine and inconsistent with the length field!
  • V9t9 File (FIAD)
    • This is the most common emulator file format, it is simular to the TI Files format above in that you can store TI files in a foreign drive format but access them on the TI just like they were native.  V9t9, Win994a, HDX and Classic99 all support this format.
  • V9t9 disk image (DOAD)
    • this is a “sector dump” of the TI disk
    • Supported by Classic99, V9t9, Js99er, Win994a and MAME/MESS.
  • PC99 Disk image
    • PC99 sector dump of the TI disk
    • Supported by PC99 and MAME/MESS

TI-99/4a FAQ: User Meets/Festivals

User meets/festivals:

USA:

  • Chicago TI Fest: TBD – Evanston Public Library, 1703 Orrington Ave, Evanston, IL 60201
    • Chicago TI Fest Companion Gathering: TBD https://atariage.com/forums/topic/287013-chicago-ti-friday-2019-companion-gathering-to-chicago-ti-world-faire/
  • TI Fest West: sometime in 2021 – TBD
  • Vintage Computer Festival Pacific Northwest – cancelled due to virus
  • Portland Retro Gaming Expo: Portland Retro Gaming Expo  https://www.retrogamingexpo.com/admission.php  also cancelled due to virus

Europe:

  • The German group will meet in Vienna (Austria) for 2020. It will take place from October 2nd to 4th (Friday to Sunday).
  • The Dutch group will meet on 14th March 2020 in Den Haag, Netherlands.
  • The British group will meet for their AGM on 17th and 18th April 2020 in Loughborough, England.
  • Regionales Usertreffen 4. April 2020 in Mannheim, Germany cancelled due to virus

More info: https://atariage.com/forums/topic/299877-ti-europe-events-2020/

TI-99/4a FAQ

Frequently Asked Questions: Initially I will be cutting and pasting the FAQ from the Atari age forum. I’ll be updating this one then referring people here from the forum in the future once it’s complete. – Greg

crammed into 8 bit architecture, still does it's job
crammed into 8 bit architecture, still does it’s job

Table Of Contents:

TI title screen
TI title screen