Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


kl99 last won the day on August 24 2019

kl99 had the most liked content!

Community Reputation

950 Excellent

About kl99

  • Rank

Profile Information

  • Gender
  • Location
    Vienna, Austria

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. i didn't follow the conversation. to get automatic measurement, without looking at the clock the right time one could use Classic99 and include saves to two different files, that both files were not existing yet. like this you can use the windows/dos filesystem timestamp for the windows files PRE and POST to figure out the timestamp, it is at least as precise as seconds. 100 OPEN #1:"DSK1.PRE",SEQUENTIAL,INTERNAL,OUTPUT,FIXED 128,PERMANENT 110 CLOSE #1 120 FOR I=1 TO 1000 130 CALL CLEAR 140 NEXT I 150 OPEN #1:"DSK1.POST",SEQUENTIAL,INTERNAL,OUTPUT,FIXED 128,PERMANENT 160 CLOSE #1 an alternate would be to use a clock device and write the time before and after a test to the screen or to a file.
  2. Thanks very much. After some research i now realize this was preserved 2020 by jbdigriz jbdigriz seems to have many documents on TI XB. Maybe you have some of the applicable documents retroclouds was referring to?
  3. Hi retroclouds! I only know of Revision 2.0 of the Product 359 Basic Interpreter Design Specification from 28th January 1979. It would mean a lot if you could preserve the more upadted version. One documentd mentioned in the list was preserved by Toucan as part of the CB wilson document donation to him while CB was still alive: Specification of a Texas Instruments Standard for the BASIC Language (June 9, 1978) 182 pages pdf There is also a related preserved document named "Home Computer Software Development System Programmer's Guide" from 15th August 1979, revised 6th November 1979. That one was preserved by Ksarul and was uploaded somewhen on atariage. I can upload it if it is no longer available on the original location. There is also a document named "Top Down Operator Precedence" in the Applicable Documents section, which got preserved into The Cyc. We still miss this main internal document: Home Computer Basic Language Specification (April 14, 1979) Does anyone have the ANSI standard yet? American National Standard for Minimal Basic (ANSI X3.60-1978)
  4. I am worried so much about our Berry. Several people have troubles getting a lifesign of him. Including David Caine, Fred Kaal and me. His Whatsapp Account shows last online at 18th feb 2021. He used Whatsapp on a daily basis. I think I had a phone call with Berry around his Birthday, 12th January. He was telling me about his health problems back then. His phone seems to be turned off and you immediately endup on the mailbox. In the Facebook Messenger I don't get the "reading" symbol, which would indicate he has seen the message. Was anybody of you in contact with him or got a lifesign of him somehow? Does anyone know the names or contact addresses of his relatives?
  5. all the best from my side as well to you Erik! I read the last months posts of this thread and only want to mention something about your possibility to load a file (cartridge) into the >6000 - >7FFF memory area. There you mentioned it is not write protected and therefore might act as 8K ram slot. While this write possibility is wanted in most places please consider - there are cartridges that use writing to certain memory addresses in that area in order to switch their rom banks. - there are cartridges that do a write because of a bug, which is not making an impact if the cartridge space is write protected (like on the actual hardware with an actual cartridge). - there is Mini Memory, which is (if I am right) also having some special writes for its functionality. Which is one of the few original cartridges actually using part of this address range to store data. Enjoy working on these projects, but also take it easy with your recent infection.
  6. http://www.ti99.eu/?attachment_id=123 http://www.ti99.eu/?attachment_id=87 My keyboards works fine. Jens-Eike has problems with his, some keys don't react at all, some keys auto-repeat too often. I know about many 99/2 having keyboard problems. Not sure if Hex-Bus and its slave mode offers the possibility to come up with a Hex-Bus Keyboard to overcome the problems with the installed keyboards.
  7. Just to warn you, easiest way is not the same quality as the best way. And in best case you end up with something that is still 100% of the quality of what kind of signal you started with. In the NTSC console this would be a very noisy composite video signal. So the Transformation will in best case not add additional noise and quality loss. The Transformation will never result in a better video quality than what you started with. Transformation helps to overcome some connection or compatibilty issue, not to increase the quality.
  8. Talking video signal or monitor effects. There is a large group of people highly interested in experiencing their video games with scanlines. This is happening on all tube displays and due to interlacing. This was very enjoyful on the arcade monitors, on the televisions and analog monitors at home. The better the quality of the display the better your sprites showed their individual scanlines. There is a hype after Sony PVM or even Sony BVM that were used as Professional Video Monitor or even Broadcast Video Monitor. Those have to fullfill higher standards than Consumer TVs. Super expensive back in the days, now the best way to experience your pre-hdmi video games. Modern displays are huge and colorful but lack this feature. And it is its own science how each console needs to be modded in order to produce the best possible video signal.
  9. Confirming, this was never happening on any of the PAL machines. I was amazed seeing Parsec and this effect the first time on a NTSC console. Knowning this as a game developer you might even intentially make use of this rainbow effect in your games. On PAL you could consider the timing off. 50 frames per second instead of 60 frames. Most games are running a bit slower allowing you to react quicker. This was not just a TI-99 phenomen, same for the Nintendo NES or Sonic on the Genesis. Is there any way to calculate the occurence of this effect? Knowning this would allow programmers use the effect, and would allow Developers of Emulators to add the effect as a Feature. It is not happening on the F18A vdp, so is it a result of using a NTSC composite signal? It is not related to the Tms9918 as such or?
  10. This is a real highlight Acadiel! Thanks so much for providing this. Since a few years I am in contact with one of the software engineers, that was working on a secret tms9900 computer project at TI. She still knows a lot of facts about it. It what a very interrupt driven operating system and less limited than the 99/4, but she forgot the project name. Now we finally can get confirmation if it was that project she was working on. She worked on drivers and on the operating system. That computer did run on a full CRT with full keyboard and the interrupt handler allowed to do background printing. Is there any more documents on the SR70 in the lot?
  11. Your statement assumes the game is stored in TMS9900 machine code, not TMS9900 assember object code, nor written in a high level programming language like Basic. But then you face the following... Situation: - no single CPU (also not todays CPUs) can run machine code from a mass storage device directly. - you can only run machine code from CPU memory. - to execute some machine code, this machine code needs to first be copied from its current location (disk, tape) into CPU memory, such a thing is typically called loader. So either you need to have such a loader in CPU memory or create one in CPU memory to be able to start the loader to be able to start your game. Finding such a loader: - such a loader was not part of the ti-99 console system software nor part of TI Basic that came with the console. - the console system software was on ROM chips and did only include the absolute essential stuff for an unexpanded console, it was NOT including software for potential expansions - the unexpanded console is only coming with 256 bytes of CPU ram - having a loader for running machine code within the 256 bytes of CPU ram would have hardly added value to the target audience. so not existing. - having a loader for a potential memory expansion would not fit the strategy of a tight console system software. so not existing. Creating your own loader: - TI Basic, that sits in the console, is your only way to interact with the computer, unless you plugin a cartridge. - TI Basic is limited, but can be expanded by inserting certain cartridges and selecting TI Basic from the Menu to have its additional commands available. (Mini Memory, Editor/Assembler, Statistics, Personal Record Keeping, Personal Report Generator, Terminal Emulator II, TI Extended Basic) - TI Basic with no cartridge plugged in is not(!) providing you with the necessary commands to create your own loader. This would at least require commands in TI Basic to write to the 256 bytes of CPU Ram or towards the CPU Memory Expansion. - TI Basic is not aware of a memory expansion. You can not access or use the memory epxansion from TI Basic. - TI Basic has an OLD (load) functionality but that is limited to load basic programs and it loads the basic program only into Video Ram since all of 256 bytes of CPU RAM are used by the system and the GPL and Basic Interpreter. Adding a cartridge - the expansion strategy of TI was to expand the functionality of the computer via cartridges: - TI Extended BASIC cartridge added new important features to the console, making full use of an installed Memory Expansion. It also adds commands to read and write to all installed CPU memory. With those extensions you can either create your own loader or run one created by another person. Those command extensions require the 32K memory expansion. - Mini Memory cartridge added 4K of CPU ram via the cartridge part and adding assembler functionality and also a loader for a game like you mentioned. Also it expands TI Basic by several commands to read and write to CPU memory allowing you to create your own loader. - The Editor/Assembler cartridge added tms9900 assembler functionality and came with several loaders for a game like you mentioned. Also this cartridge expands TI Basic by several commands to read and write to CPU memory. This cartridge requires the 32K memory expansion to start. - TI Writer cartridge came with a loader for a game like you mentioned. This cartridge requires the 32K memory expansion to start. Why does it even work via cartridge? - when you insert a cartridge, its ROM is part of the CPU memory and therefore any machine code in its ROM can be run directly by the CPU. So to sum it up, the Extended Basic or Editor/Assembler cartridge is not required but they provide you with a loader for Tms9900 machine code which is not part of the console system software. Instead of running those cartridges one could release a cartridge with nothing but such a loader. And yes, recently somebody managed to find a way out of the TI Basic sandbox and therefore allows to start a loader even on an unexpanded console without any cartridge installed. But this was never intended by the engineers of the console.
  12. Hi mizapf! Are there any comments files for our TI computers? This code annotations are supposed to allow comments next to the disassembled cpu memory addresses. I played around for a few minutes with this features and it seems nice. Would make sense to have this added for the first 8k of the 99/4(A) and for the 99/8 where we have the full source code with the original comments by the TI devs. And an created comment is not lost if you turn off mame. once saved to file it is used and shown whenever you start the machine in mame in debug mode. \comments\tomy.cmt Some small things I did wonder about. If you do add a comment via the debug window, it gets lowercased. The actual created file seems to use some kind of crc. Not sure which one it is using, which kind of blocks creating such a file outside of the debug window with some external tool. Using some external tool to create the file would bypass the lowercasing problem.
  13. Beery the problem is not having 32K of data to analyze but that the file includes both assembly instructions and GPL instructions and that this fact screws up the automatic disassembly tool approach. So that is why I asked how a disassembler internally works and does it assumptions. Knowning those I can repeat what is safe to be used in this case and NOT doing those things that screw up the outcome in this case. This is true for both disassemblers, be it for GPL or Tms99xx assembler. That is why I asked what facts I can use, like that addresses the PC stored are for sure Tms99xx assembly code lines, and working from the known good disassembled parts towards the unknown.
  • Create New...