Jump to content


  • Content Count

  • Joined

  • Last visited

Community Reputation

503 Excellent

About apersson850

  • Rank

Recent Profile Visitors

7,036 profile views
  1. The TMS 9995 also has internal 16-bit memory high up in the memory map. The TMS 9900 doesn't. In the TI 99/4A, this area is used for memory expansion. In a computer based on the 9995, the equivalence of the RAM PAD at 8300H would have been located in this internal memory.
  2. The way I added 16-bit wide RAM to the machine not only speeds up memory access to the normal memory expansion. It also adds another 32 K RAM, which can be paged in, in 8 K chunks, across the rest of the address space as well. In addition, the fast 32 K RAM expansion can be paged out, to still allow access to the normal memory expansion in the box. So this modification increased CPU-addressable RAM from 32 to 96 K. Today, when we large RAM-disks, and interfaces to SD-cards with Gigabytes of storage, this is nothing. But when I invented the design back in the mid 1980's, it was quite a large memory for a home computer. The first IBM PC could be bought with 16 K RAM in 1981... As an example, I could page in RAM to get a contiguous RAM file in addresses 0000H-7FFFH. That means monitor ROM, DSR and command module ROM is paged out, but frequently you can do some meaningful actions without them. With this setup, you have access to a 16 K words array, which can be directly addressed by the CPU, to use for internal sorting or whatever. Then just page the RAM out again, and any normal activity in the computer can't touch your array.
  3. Simply by installing 16-bit wide RAM inside the console, the speed of assembly programs where both the workspace and code is in expansion RAM is increased by about 110%. Thus you don't have to consider where to put your workspace in RAM PAD to avoid disrupting something in the system, but still get full speed. The difference when running programs in TI Extended BASIC is much smaller, but can still be noticed. Forth runs a bit faster, but just like the p-system (Pascal), it already has the workspace and the inner interpreter in fast RAM, so the difference isn't astonishing.
  4. Yes, it looks like if the interpreter has "no code to go to" after the GOSUB, it will in error go to the code after the ELSE, instead of the code after the whole IF statement, which is where it should be heading.
  5. Well, none of the above is 100% correct. MOV @MAPDAT,R6 will not store a pointer to MAPDAT in R6, but the content of the memory word at MAPDAT. Thus your byte >D9 will end up at the address pointed to by the data at the first word of MAPDAT, not in the first word of MAPDAT. This will defnitely not be what you expect, and will perhaps lock up your computer. That's the least myserious thing that could occur. On the other hand, LI R6,@MAPDAT isn't correct either. It's not even correct syntax, since such a construct doesn't exits for the TMS 9900. What you want to do is LI R6,MAPDAT, since it's the value of MAPDAT you want to use as a pointer to the first MAPDAT word. To map an area in memory, that's not in line with your code, you can use a construct even TI's original assembler provides. You can use dummy segments, where the dummy origin, DORG, allows for generating entries in the symbol list, without generating any code. DORG >8300 FIRST DATA 1234 SECOND DATA >35F2 THIRD BYTE 22 FOURTH TEXT 'X' Will generate symbol table entries for the labels, like if they were assembled starting at address >8300. But no data is created in a dummy segment, nor loaded into memory at load time.
  6. The best internal modification I've done to my console is adding 64 K 16-bit wide RAM. But you can't honestly call that a simple modification.
  7. I was referring to that the case for the "terminal" on the TM990/189 is the same case as was used by the TI 59 calculator.
  8. TI Extended BASIC to begin with. Then came the Maximem, a module simulator (like Gram kracker), into which you could load more or less any module. One at a time, of course. After getting the p-code card, my programming was mainly done without any particular cartride, as none is needed by the p-system. But I used the memory inside the Maximem as a RAM-disk.
  9. Well, if somebody reports to the FCC, or similar authorities over here, that they have noise preventing radio reception, then an on location investigation could take place, in which case your modified electronics could be found as the culprit, in which case you could be held responsible. But there are many "could" in that chain of events. One of the main reason the FCC was so worried about this in the old days, compared to nobody caring back then in Europe, is the general state of everyday technology in the US being some 50 years behind Europe. Here, FM broadcasts took over from the much more sensitive AM radio broadcasts in the 1950s. Thus there wasn't much concern about electromagnetic noise until all the computers coming in everywhere put the first requirements for legislation similar to what you had in the US in place in 1995.
  10. No, I've never used my TI expansion box without any floppy controller. When I bought the box, I got the flex interface, 32 K RAM expansion, RS-232 card, p-code card and TI disk controller from start. Put two Teac FD 55B drives in the PEB from start too. I've since changed to a CorComp double density controller, added two more IBM DSDD drives, added a real-time clock card and added an IO-card, with digital and analog interface circuits. The last addition is a Horizon RAMdisk. Now the box is full, unless the RAMdisk card is modified to contain the memory expansion as well.
  11. They are frequently programmed in C or the Pascal inspired Structured text languages today.
  12. Being a designer of electric systems for machines, where many of them are exported to the US, I can tell you that the FCC is concerned about interference just as they used to be. Actually more than before, since they have now adopted some of the more modern European style rules to the concept as well.
  13. I still like physical calculators better than using a computer. For the simpler tasks. Not for large programs. But I use my HP 32 SII, HP 15C and HP 16C quite often. On my phone, I use a simulated HP 48S.
  14. My first programmable device was also a TI-59, augmented by the PC 100C thermal printer. Spent many hours doing a lot of software on that one. I've sold the printer, but still have the calculator.
  • Create New...