Model 100 Background
The Model 100 was created by Kyocera in Japan and was based on the NEC PC-8201, and marketed by Radio Shack in the United States. It was followed by the Model 102, and the Model 200.
Product Description (RSC-10)
TRS-80 Model 100
So small it’ll fit in your in-basket! The Model 100 is a true portable since it runs on batteries or optional AC adapter. And with its five built-in programs, Model 100 is truly revolutionary. Produce correction-free memos, letter sand reports with the personal word processing program, TEXT. Editing functions include finding, duplicating, deleting and moving text. With optional printer, you can print any of your files in selectable widths (up to 132 columns) without splitting words. SCHEDL turns the Model 100 into a mini-database for appointments, expenses, and “to-do’s”. And file away names, addresses and phone numbers with ADDRSS.
More Built-In Features
With its TELCOM program and built-in auto-dial modem, Model 100 can be used as a terminal for computer-to-computer communications or to access information services like Dow Jones News/Retrieval or CompuServe. There’s even a program to automatically dial your phone! Programmers will love Model 100’s Microsoft BASIC – an enhanced version of our popular Model III BASIC. You get full string handling, complete file operations, multidimension arrays, 14-digit double prevision math operations and more. Separate internal nickel-cadmium batteries retain memory data with power off.
Complete Interface Capability
Connect your Model 100 to any Radio Shack dot matrix, daisy wheel or graphic printer via the parallel interface. With the RS-232C interface, Model 100 can be connected to another computer – micro, mini or mainframe. The cassette interface lets you save or load programs, data and text at a fast 1500 baud using an optional recorder. You can even interchange text tapes withour new TRS-80 Model 4. Requires four “AA” batteries.
Who is the Model 100 for?
This portable computer provides a convenient workstation for exeutives, managers, researchers, students – anyone who wants immediate computing power wherever they go. Model 100’s compact size, five built-in programs and expansion options give it the versatility to be used at your desk, in the field or on the road. And with the built-in BASIC, you can write programs for your other applications.
Model 100 Specifications
Reduced to $599/$799 in RSC-12
Model 102 Background
The Model 102 was created by Kyocera in Japan, and marketed by Radio Shack in the United States.
Description from (RSC-17)
We’ve redesigned our best-selling portable – the famous Model 100 – into an even smaller package. But we’ve retained the same remarkable features, including five instant-on programs, an 8 x 40 display and a modem – all built in. Use the Tandy 102 as a personal word processor, address/phone directory, appointment calendar and telephone auto-dialer. Access other computers or national infomration services by phone with the built-in modem and communications program. You can even write your own programs in BASIC. Includes parallel, RS-232C, cassette and bar code reader interfaces. Only 3 lbs. Requires four “AA” batteries.
Description from (RSC-19)
Only 3 pounds and 1/2″ high! Use the Tandy 102 as a personal word processor, address/phone directory, appointment calendar and telephone auto-dialer. Access other computers or national information services by phone with the built-in modem and communications program. You can even write your own programs in BASIC. Includes parallel, RS-232C, cassette and bar code reader interfaces. Requires four “AA” batteries.
Description from (RSC-20)
Our lightest portable computer is now even better with 32K of RAM for more dynamic computing power. It only weighs 3 pounds and is 1-1/2 inches high – first easily in a briefcase. Five instant-on built-in programs let you use the Tandy 102 as a personal word processor, address/phone directory, appointment calendar and telephone auto-dialer. Access other computers or national informaiton services by phone with the built-in modem and communications program. And you can write your own programs in BASIC. The Tandy 102’s compact size, built-in programs and expansion options give it the versatility to be used at your desk, in the field or on the road. Includes paralell, RS-232C, cassette and bar code reader inferfaces. Requires four “AA” batteries.
Model 102 Specifications
What did Frank Durda Say About the Model 100:
By now it is early Fall 1982,• and the pace quickens. Several new products are corning into our testing area and all of them are to be done by early 1983. This was strange because normally new products were to be ready by August, so they would be available when the new catalogs came out. But this time it was different.
One of the new products I got to test was a portable computer made in Japan. Although it had a completed case, a circuit board hung out the back with EPROMs on it, and it had to run off a wall adapter. It was so secret that I had to keep it hidden in my 5′ by 6′ cubicle, and only a few people were allowed to see the problem reports regarding the product. This was the Model 100, and in these early days, it was a significant breakthrough. It wasn’t particularly fast, the early documentation was half Japanese and pig-English, but there was nothing else like it.
The early versions had some features that would later disappear. The most significant one was an alarm system that would make the computer beep for appointments and other events (even if the power switch was off) . This wonderful feature was deleted to make room for additional functions in BASIC and improved scrolling. In those early versions, it would make you dizzy watching it scroll. We really wanted something else to be dropped so that the alarm feature could be kept, but Alarm required more RAM than Address Book and that was the other choice.
When we first got the 100, there were no cables so we could not test the modern. When they did arrive, it was discovered that the modern could not dial a telephone number. It worked on some phone lines, and not on others. The engineers from Japan carne over to study the problem and discovered that the make-break ratios for rotary dialing were different in the US than they were in Japan. Today, you can find a command in your Hayes-compatible modem that takes care of this, but it was surprising news back then.
We also tried to communicate with the Kyocera engineers (the company that actually built the Model 100), through their translator, that the plastic cover over the display on the prototype models scratched very easily. After several attempts the translator was unable to explain to the engineers what the problem was. The translator finally grabbed the prototype, and used a key to scratch the daylights out of the plastic cover. Instant understanding resulted and a tougher plastic was eventually used.
Testers are asked from time to time, “Do they fix everything you find?” Of course not. Sometimes, it is so obscure or picky that the time is better spent fixing a more serious problem. Sometimes it cannot be reproduced reliably, and the problem cannot be located. Sometimes there is a marketing decision that says “Stop tinkering and ship some product!”. One such example was the bug that was present in numerous versions of Microsoft BASIC and even some clone versions. If you are running Model III BASIC (ROM or disk BASIC), and you type
ENTER and the same sequence on the next line, the system will reboot. Well, the early Model 100s did this too, only you also lost everything you had saved! This was discovered first on the Model 100, and as a normal procedure, other versions of BASIC were tried and the bug in the Model III was discovered. We tried to get this fixed in the Model 100, but it was discovered late in the testing period and a decision was made to not fix an obscure bug like this. Later versions of the Model 100 ROMs did correct this problem.
TRS-80 Model 100 Emulators
Please visit the Emulator page for up to date listings.
TRS-80 Model 100 Transfer Programs
Emulates a Tandy Portable Disk Drive on a DOS or Windows computer so that a Tandy/Radio Shack Model 100, 102, 200 may save and load files to a PC computer via a Model “T” computer DOS and null-modem cable.
Use with NON-Windows PCs, Only! Transfer files between Model 100/102/200/NEC8201 or TPDD/TPDD2 and most all DOS computers. Supports all file types (.DO, .BA, and .CO). This is a “must have program” for DOS PC owners. CompLink cable required for Model T to DOS (see CompLink Cables). TPDD/TPDD2 connection requires only a simple port adapter to mate TPDD/TPDD2 cable to DOS COM1 or COM2 port.
Conserves battery power while at the office or at home. U.L. Listed.
Connects your Model 100 to a telephone handset when direct connection to a modular phone jack is not possible.
Turn your Model 100 into a versatile disk-based home or office system! Built-in disk drive lets you create, store and retrieve files on diskette. It’s much faster and more reliable than cassette storage.
Provides a 40-character by 25-line screen display on any television, and an 80 x 25 display when hooked to a standard video monitor. The larger screen is perfect for word processing or developing programs in BASIC. Just plug the Disk/Video Interface into an AC outlet, connect a TV or monitor and a Model 100 – all cables included. There’s no new operating system to learn and one simple command switches the display to the video screen. The Interface does not require use of Model 100’s standard connectors – so you have room for further expansion. You can add a printer, bar code reader, RS-232C communications device or cassette recorder. Requires Model 100 with 16K memory.
Installation not included.
Get fast access to 100K of data on 3-1/2″ floppies. Features menu-driven operation, list of files on disk, plus FORMAT, SAVE, LOAD, KILL and RENAME functions. Transfers data at 19,200 baud. Battery warning lamp. disk access lamp. When the batteries are low, and the unit is in process of saving, loading or backing up, it will finish its job befwe shutting down. Unit will not function if batteries are low, but will finish the job. Initialization software included. Weighs 1-3/4 lbs. 2 x 4-15/16 x 6-1/8″. Requires four “AA” batteries or AC Adapter (not included).
This compact briefcase provides plenty of room for your TRS-80 Model 100, CCR-81 Cassette Recorder and cables. 20 x 14 x 4″
Compact carrying case for your Model 100 system – perfect for travel. Provides plenty of room for the Model 100 computer, cassette recorder and cables. Measures just 20 x 14 x 4″
200K of data on 3-1/2″ floppies. Requires four “AA” batteries or AC Adapter (not included).
Add 8000 characters of memory. Up to three memory modules may be installed to give you a 32K Model 100. Installation required (not included).
This optical scanning device is expressly for the Model 100 and is ideal for such tasks as billing, couponing and retail-item control. The pen-like wand simply plugs into Model 100’s standard bar code reader interface. Software drivers callable from BASIC allow the Model 100 to read the Universal Product Code, 3 of 9, or NATI bar code formats. Bar code wand contains “soft-touch” push-button switch to conserve power when not in use.
Rugged and incredibly quiet (50 decibels) – perfect for use with Model 100. Use it anywhere – works on batteries or AC power! Weighs less than 5-1/2 lbs. 2-3/4 x 11-7/8 x 7″. U.L. listed AC operation or five “C” batteries (not included).
Connects Model 100 to a modular phone jack. Includes one free hour (non-prinme time) on CompuServe and Dow Jones News/Retrieval.
Theory of operation on Model 100 hardware.
A complete step-by-step learner’s manual. Discusses the capabilities of the Model 100, plus a complete course in Model 100 BASIC.
Emphasizes practical applications of Model 100. Includes cassette tape with 12 programs.
Debug, write and assemble machine language code.
Takes input from Model 100 TEXT files and produces bar codes in six forms. Requires 24K, Cassette recorder, printer and cables.
Allows bar code wand to read Interleaved Two of Five, Codabar and UPC-E bar codes. Requires 16K, cassette recorder and wand.
This comprehensive guide helps you learn Model 100’s powerful Microsoft BASIC in an easy to use tutorial style. In addition to teaching BASIC commands and the process of writing programs, the BASIC Language Lab covers other related areas such as redefiniting function keys F1-F8, automatic execution of BASIC programs, and using Model 100’s graphic and sound capabilities. BASIC Language Lab provides complete examples of each new concept presented. Includes a cassette tape with three sample programs for further illustration.
Programs include Inventory Replenishment Analysis, Sequential Decision Analysis, Financial Ratios, Break-Even Analysis, Linear Programming and Pricing Table. Requires 24K memory.
Twelve programs for business and personal finance applications. Easy to use. Includes Rent or Buy Decision, Depreciation and more.
Turn your Model 100 into an arithmetic “scratchpad”. The basic program performs addition, subtraction, multiplication, division, exponentiation and sfweral extended math functions. A special business program does extended calculations formulated to solve business-related problems.
Personal filing system for the TRS-80 Model 100 Portable Computer. Lets you store, examine, update and list a variety of information – from personal records to appointment schedules.
With user-defined record and report layouts. Requires 24K, cassette recorder and Disk/Video Interface.
Powerful data base management system. DATA and DATAW let you enter, update, merge, and list information. SORT permits organizing files alphabetically or numerically. DATAW also allows fast information entry using the Bar Code Reader.
Compute yield to maturity, discount and more with the bonds analysis program. The options trading program charts and graphically displays the effects of various strategies such as Bull or Bear Spreads. And you can compute discounted or non-discounted commissions with the stock commissioning program.
A timemanagement program for busy executives. Display your scheduled appointments or a calendar for any month of any year with a few keystrokes. The program also calculates either days or weekdays between two dates and keeps track of the dates of 17 holidays.
Create financial reports and graphs with your TRS-80 Model 100. Use the Expense program to produce expense account reports or for planning and budgeting. The Graph program lets you create pie, bar or line graphs of any reports generated with Expense.
Graph almost any algebraic function of one or two variables, including planar cartesian, planar polar, three-dimensional cartesian and cylindrical polar. Requires either the CGP-215 or CGP-115 printers, FP-215 printerlplotter or the MultiPen Plotter.
Computer yield to maturity, discount and more with the bonds analysis program. The options trading program charts and graphically displays the effects of various strategies such as Bull or Bear Spreads. And you can compute discounted or non-discounted commissions with the stock commissioning program.
Set up a budget to see where all your money is going. Personal Finance give you six comprehensive programs designed to assist you in managing your money. By setting budgets for various account categories of your choice, you simply enter monthly expenses in the appropriate categories. Then company your budgeted figures to the category expense totals which are presented in report format. In addition, Personal Finance includes a complete checkbook system that will reconcile monthly statements. You can also keep track of and provide reports on your savings account.
Divide a large job into individual tasks. Requires 24K and cassette recorder.
Allows you to use your Model I/III/4/II/12 disk drive as a storage area for your Model 100 files. Easy to use and self booting. Includes cassette and diskette.
Turns Model 100 into a true word processor-with far more powerful and sophisticated features than Model 100’s built-in word processing software. Features advanced formatting capabilities. Produce correction-free letters, memos and reports with page headings, numbers, headers and footers and much more. Requires printer.
A minispreadsheet divided into rows and columns. Enter your formulas and numbers, and Spectacular automatically calculates and displays the results. Requires 16K memory.
Save the Galaxy! Your mission is to destroy the alien ships being launched by the hostile mother ship. Excellent action graphics allow you to fly your fighter ship across the Model 100 screen as the aliens flee and planets zoom by.
Get the statistical information you need! Statistics generates reports for descriptive statistics, frequency distribution and histogram, correlation and regression, time series analysis, multiple regression and one-way and two-way analysis of variance. Includes thorough manual with examples.
Generates and reads modified NATI code. Requires 24K, cassette recorder, printer, cable and bar code wand.
A complete operating system for Model 100/Tandy 102 Portable Disk Drive. Save and load files directly in TEXT and write BASIC programs that access files on disk.
An electronic worksheet that’s ROM-based-does not occupy Model 100 RAM! This portable version of, the popular spreadsheet analysis program provides a large grid for entries which can be made up of words, numbers or formulas. Alter a value or formula and watch the figures change as Multiplan automatically up dates all affected numbers.
Contains three programs: Data Manager, Spreadsheet and Text Formatter. Information stored in Data Manager can be utilized by Spreadsheet and Text. Data Manager can have up to 20 fields per record. Spreadsheet can be a maximum of 99 rows and 99 columns. Text gives you several printing parameters for better document control. Plugs into ROM socket – programs are not stored in RAM.
Hacks / Patches / Tips / Tricks
How To … Transfer ASCII Files from an IBM to a Model 100
- Connect the RS-232 Port on the Model 100 to the Serial Port of the IBM
- Set the PC terminal program to 19,200 BPS, 8-Bit, No Parity, XON/XOFF Enabled
- Ensure that the PC terminal program does NOT add linefeeds
- Save the file you want as an ASCII file (we will assume it is FILE.TXT)
- Export the ASCII file to the PC
- On your PC – Open a DOS Shell or use DOS and type: MODE COM1: 300
- Go into BASIC on the Model 100
- Type “LOAD:COM:98n1e” (without the quotes)
- Hit (ENTER)
- On your PC – type, COPY FILE.TXT COM1:
- When done hit (CONTROL)-Z on the Model 100
- If the program transferred fine, SAVE it.
- Download Desklink to C:\ROOT on your PC
- Execute the program (which is a self-expanding archive)
- Follow the instructions for DeskLink and TEENY (contained in the archive)
How To … Install a .CO File by Richard Hanson
The .CO file extension in a Model 100, 102, 200 means that the file is programmed in machine language. Just because you “see” the .CO file in your menu does not mean it is where it has to be to run. In fact, it’s easy to know if a .CO is installed as it will beep and return you to the menu if it is not. It’s that simple!
Machine language programs can not run in a Model 100, 102, 200 without being “copied” to a special place in RAM. And yes, once copied to that special place in RAM the .CO files also reside in yet, another place in RAM so they will appear in your menu, i.e. a installed .CO file that is also seen in the menu is in RAM in two places. This is not necessarly bad – just the way it works in these machines.
To copy the .CO file to that special place in RAM so it will run, you need to do the following steps.
Note: In this example the word “filename” refers to the name of the .CO file, and ##### refers to the “Top:” number you need to find and use to install the .CO file.
Go into BASIC and issue the commands:
You will get three numbers labeled “Top:”, “End:” and “Exe:” followed by an error code – ignore the error. Write down the “Top:” number.
While still in BASIC, issue the commands:
You have just installed the .CO file. Now, when you place your bar cursor over the file and hit <enter> it will run. These are the basics. There is far more to this subject, such as relocating .CO file code, installing more than one .CO via stacking, and .CO file swapping.
Model 100 Internals … Interface Pin-Outs
- Remote 1
- Remote 2
- RxC Receive data for CMT
- TxC Receive data for CMT
- Not Connected
- Not Connected
- TL conventional telephone unit
- RxMD Direct connect to telephone (Ring)
- RxMC Acoustic coupler (MIC)
- TxMC Acoustic coupler (Speaker)
- TxMD Direct connect to telephone (TIP)
- RP Ring Pulse
How To … Patch the Model 100 for Year 2000 – Chris Osburn <chris [whirlpool] muppetlabs [spot] com>
To do it via hardware, see this patch.
WARNING! This patch has been tested on one and only one Model 100, i.e. the one on my desk. It has 32k of RAM. This has not been tested on machines having less RAM, nor has it been tested on the Model 102 or 200. I’ve noticed side effects on my machine when running machine-language programs. Usually these side effects resulted in locking the machine up or cold restarts causing memory loss. Make a backup! I haven’t tested for effects on the built in apps as yet. BASIC should pose no problem as the program reserves for itself a small amount of high memory. You Have Been Warned. Caveat Utilitor. Your Mileage May Vary.
Bug and side effect reports are welcome, but I doubt I’ll be able to do much about them. This patch is no way as good a solution as patching and burning a new ROM. (By the way, if you can patch the ROM, set addr 5A53h = 32h and addr 5A56 = 30h and away you go!)
The TRS-80 Model 100 was created in a joint venture between Kyocera (for the hardware) and Microsoft (for the software). The Model 100 has an attractive main menu display, which displays the date in the form
“Jun 20,1998 Sat 13:15:36“.
The Model 100’s real-time clock chip is a uPD 1990AC which stores a BCD represntation of month, day of week, day of month, hours, minutes and seconds. It also produces a pulse that drives a background process interrupt. Conspicuously absent is the year. The Model 100 works around this by storing the 2-digit year as 2 BCD digits in locations F92Dh and F92Eh and updating these by comparing the month reported by the 1990AC with a copy stored in addr F655h. The day-of-week is maintained in a separate register in the 1990AC, and not calculated. If you decide today is Sunday, the chip will happily believe you and tell you tomorrow is Monday, regardless of the actual day and date. This makes our task considerably easier.
Nowhere in the internal workings of the Model 100 is the century stored or used. BASIC programs may therefore have year 2000 issues beyond the scope of this document. However, as noted above, the century is displayed on the main menu.
At addr 5A15h is the routine that grabs the real time clock data and formats it for menu screen output. Notable in this routine are these instructions:
5A4Fh: MVI M,2Ch ; store a comma INX H ; increment memory pointer MVI M,31h ; store the digit '1' INX H ; increment memory pointer MVI M,39h ; store the digit '9'
(As noted above, if you can patch the 31h and 39h to read 32h and 30h, your work here is done. Feel free to let me know if you have this capability; i’d be happy to do business with you!)
The 5A15h routine uses a scratch pad starting at FD88h to build the output string, and the “19” gets dropped into the two bytes FD8Fh and FD90h. If one had a way of changing these values before the instruction that copies them to the LCD display is called, surely we’d be in Nirvana. But the LCD update is called just a few instructions later.
Enter the background process, mentioned above. 256 times per second the real time clock prods the RST 7.5 interrupt line on the 8085 processor, causing the routine at 003Ch to be executed. Eventually, this takes us to F5FFh where we find three bytes encoded
F5FFh: RET NOP NOP
Three bytes is just the right amount for a JMP instruction to take us to the code of our choice, just as the designers intended. (They did intend that, right?)
Following is a BASIC program that reserves 16 bytes of memory for our update routine, pokes in the relevant processor instructions, then (very carefully) enables the patch by changing the bytes at F5FFh.
1 ' TRS-80 Model 100 Year 2000 Menu 2 ' patch. Run to get "20" to appear 3 ' as the century. run 1000 to 4 ' restore default functionality 5 ' Side effects: Many! run 1000 6 ' before questionable activity! 10 ' allocate our memory by setting 11 ' HIMEM 20 CLEAR 256,62943 30 ' read the instructions from data 31 ' to memory 40 FOR A=62944 TO 62956 50 READ B 60 POKE A,B 70 NEXT A 80 ' Enable the patch. We want to 81 ' have JMP 0F5E0H encoded here. 82 ' But, if we put the JMP instruction 83 ' in first, the machine will just 84 ' keep jumping to 0000h 256 times 85 ' per second. So, we do this in 86 ' reverse! 100 POKE 62977,245 ' hi addr 110 POKE 62976,224 ' lo addr 120 POKE 62975,195 ' and JMP! 190 ' The preassembled assembly 191 ' program that gets called 200 ' ORG 0F5E0H 210 DATA 229 :' Y2K: PUSH H 220 DATA 245 :' PUSH PSW 230 DATA 33,143,253 :' LXI H,0FD8FH 240 DATA 54,50 :' MVI M,32H 250 DATA 35 :' INX H 260 DATA 54,48 :' MVI M,30H 270 DATA 241 :' POP PSW 280 DATA 225 :' POP H 290 DATA 201 :' RET 999 END ' END Y2K 1000 ' Code to disable the patch 1001 ' if needed 1010 POKE 62975,201 ' RET
The code pushes registers that may be affected, then goes to store the “20” in the right place. It’s certainly overkill to do this 256 times per second, and will likely have a performance impact. Unfortunately, there’s no hook provided in the date string builder routine. The POKE at line 1010 restores the original RET instruction, disabling the patch.
The program uses the uppermost 16 bytes of free user memory (starting at MAXRAM – 16) to store the patch. Any machine language program that will use that area will need to have the patch disabled by restoring the RET instruction to F5FFh.
I haven’t determined whether the scratch pad at FD88h is used by any builtin programs. Obviously, the menu doesn’t need it during at those times, and it appears that it isn’t updated. A way of determining when one is in the menu program is desirable.
I’m uncertain whether MAXRAM – 16 will be a suitable location for all users to store the patch. I need to rewrite the code to make that a settable variable. (Not hard, just haven’t gotten there yet.)
Model 100 Related Links