Jump to content

mizapf

Members
  • Content Count

    5,351
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by mizapf

  1. You need to use the "ti99_4ev" driver, which need the files ti99_4ev.zip and ti99_4a.zip. PEB slot 2 is automatically locked to the EVPC card.
  2. mizapf

    MESS 150

    Number of reasons. MESS is not a TI emulator. MESS is a comprehensive emulation system which can emulate the TI and Geneve pretty well, beside some hundreds of other systems. MESS's primary goal is the preservation of computing history. We cannot pack ROMs with it because we cannot afford to license some thousands of ROM dumps. So you have to get your own copy. And despite your obvious disgust of the command line, the command line is one of the things that strongly keep me working with Linux and feel pity for all those Windows or other system users having to deal without. It's not a limitation, quite the contrary. In my eyes, at least. There are actually some efforts to improve the user interface of MAME/MESS so we can eventually create a specific, easy-to-use, TI-specific user interface, and when we're that far, we can also go for an installer. Just takes some time.
  3. At this time, low priority, sorry. I have a huge number of open issues still waiting to be done before.
  4. Just to give an idea how MAME/MESS attempt to achieve cycle precision: One component handles all timers in the emulated system. This may be the screen at 60 Hz, firing at regular intervals, and ad-hoc timers (e.g. for the delay of the sector on the emulated floppy until it reaches the read head, or the delay until the GROM raises the READY line again. This event subsystem offers a method which returns the time until the next timer is about to fire. The scheduler lets each active component perform a specifically number of cycles, which it calculates from its cycle time and the time until the next event occurs. If all the cycles could be performed before the event occurs, the emulator will report an average speed of 100%. That is, the emulator does not run 100% in sync with the real machine, but makes sure that a certain number of cycles are executed until a timer event occurs. Since we cannot perceive a jitter in those short time scales, this is just sufficient. The problem that one has to consider with precise emulation is that there are usually more components than just a CPU, especially when there is a also a video processor, a TMS9901 running in counter mode, various circuits with specific timing behavior, and so on.
  5. EVPC and Geneve both use v9938. The 80 column mode is the startup default for GeneveOS, which is working in the emulation. The v9938 manual says that VR1 has a bit 0 at the leftmost position, so F0 is not a valid value. But this would mean an incompatibility between TMS9918 and v9938 which is not the case (I just verified: the reg 1 value is ANDed with 0x7b, so the MSB is cleared automatically). Here are some settings from my Fractals program which has a text screen: (high byte = reg number, low byte = reg value) DATA >0004,>0170,>0203,>0347 DATA >0401,>0506,>0600,>0717 DATA >0888,>0A00 DATA >0C6A,>0E00 DATA >0DF0
  6. Lee, just tested in MESS using EVPC (80 column card) and Geneve, same result for both in 80 column mode.
  7. Yes. The arguments remain unchanged. The overflow test can be done before the division process starts; the ALU just has to check whether the divisor is greater than the first word.
  8. Isn't it worth discussing? As things turn out, there will be more and more feature requests, and we have to face the situation that eventually, software will be written for it, which will require the F18A to be present. It is, of course, an interesting idea to get rid of some limitations. However, the limitations also define a platform, and as I see it, this is going to be a new computer, maybe something like a "TI-99/18A". Thinking of Rasmus' outstanding Titanium and Scramble, the real achievement is to get such a program running on the given resources. If I had not seen it myself, I would not have believed that something like this is possible on the TI-99/4A at all. If we are talking about porting games, we try to get them running with the features given by the platform. This is what porting is all about. It will not be the same similarly challenging task to port the games to an enhanced platform. Just my thoughts. I do not want to spoil the party, actually. :-)
  9. Well, if you're getting an overflow, the arguments won't be changed. Maybe your remainder is just the original value of the second word?
  10. Packing more features inside the F18A makes me feel concerned, I have to admit. As long as it was just an upgrade to connect a VGA monitor it is certainly a good thing, but if there are new specific features you want to exploit, you are going to write programs for something that is not a TI-99/4A anymore. Just a word of caution from me as a Geneve user who always hoped for some more programs that made better use of its capabilities ...
  11. What I found out is that TurboPasc'99 tries to figure out whether it loaded its utility routines into RAM before. It compares a memory location to some other value, and weirdly (or silly!), the memory location must contain FF00 to qualify as original (in which case the routines have not been loaded during uptime of the console). It showed that only the TI 32K expansion has FF00 words on powerup, which may be due to its construction, but this needs some more investigation to be fully certain. Other expansions, in particular 16 bit expansions, have 0000 as original values. I remembered that in those days long ago, TurboPasc'99 stopped working on my console, but I never found out why. It was right after I installed my 32K expansion in the console.
  12. Don't worry, you certainly should not try to write a GUI. What I wanted to say is that it suffices to know how the emulation works (with some C++ knowledge), then patch the error into the source, re-compile and see what it does. If you have a theory what could be wrong - like here, I saw that the characters on the screen were missing the leftmost column in their pattern, so I suspected that bit 0 is stuck at 0 - then you can proceed as I did, try to simulate this malfunction (and after that, take it out again).
  13. The 4416 are not suitable, as they have a 16x4 organization. So you must look for 4116 (which are, as far as I know) also used in the TI 32 K memory expansion card. ... @OLD CS1: Concerning the error feature in an emulator like MESS, this sounds certainly interesting, but you have to consider that there is an abundance of possible errors, from stuck bits to completely failing components, intermittingly failing components, errors that only appear for certain values etc. The challenge for a memory check program is to do tests that not only prove there is an error but also give an indication where the source of the error should be. For now I can just say that the source code of MAME/MESS is open, and the ony thing you need are some basic skills in C++ programming and a GCC compiler; you can then apply such changes and recompile the emulator pretty easily.
  14. MSB just means "most significant bit"; there are 8 chips on the board, and this one holds the leftmost bit of each byte. The RAM is a TMS 4116 16Kx1 DRAM. You can find the schematics on WHTech.
  15. Following the schematics of the TI-99/4A, I would say this must be the VRAM chip whose pin 14 is connected to the VDP's pin 32.
  16. Approved within MESS. This is the result of changing the line m_vram_space->write_byte(m_Addr, data); to m_vram_space->write_byte(m_Addr, data & 0x7f); The VDP uses 8 RAM circuits and spreads each byte over all 8 circuits. This means the MSB (2^7) VRAM is broken.
  17. Wait ... the mappers usually work by mapping logical addresses to physical addresses, not vice versa. The SAMS card uses addresses 4000, 4002, ..., 401e for the logical addresses 0000-0fff, 1000-1fff, ... So you can put bank value 34 into 4004, but when you write 44 into that address, the other page is banked out. You won't get a chance to write to two locations at the same time. It's the other way round: You can map the same physical address to the different logical addresses. That way you can change or read the same memory content from two different addresses. For instance, mapping one memory bank to both 2000 and A000, you can write FFFF to 2000, and A000 magically changed to FFFF as well.
  18. Things will become better once the web service is ready. Then we can get rid of that ugly, uncomfortable attempt of a user interface.
  19. Sure, go into the TAB menu of MESS, "System configuration".
  20. I'd rather like to see that in a 9938 version. There are still enough Geneves around, or 80 column cards.
  21. Just tried it ... now I see: You tried to plug in the 32K memory expansion in slot 2 which I hardcoded to contain the EVPC card. Try the option "-listslots" to get a list of valid slot options. You can plug it into slot3, but as I said, as long as you have the console 32K RAM mod, this is not necessary.
  22. mizapf

    MESS 150

    No need to check for ti_family.zip, it does not contain a ROM for the emulated SAMS card. Does it have a DSR like the Myarc MEXP-1? At least I don't have it yet.
  23. mizapf

    MESS 150

    Are you using the ftp:// address or http://? Everyone please use the ftp access until we found out why the web server ignores some directory entries.
×
×
  • Create New...