-
Content Count
5,366 -
Joined
-
Last visited
-
Days Won
3
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by mizapf
-
Hello Rich, QMC2 is not within my responsibility, and I cannot fully elaborate on its usage. What I can say, though: The system you want to start (TI-99/4A) is on the very left. Your video looks as if you clipped the left edge. Only consider the systems without a "D" in the blue disk. D means device, but don't ask me why QMC2 offers to start sub-devices. For you, "TI-99/4A Home Computer" should be the correct choice. Right-click and choose "To favorites". There is a tab "Favorites" so you don't have to look for it next time. You can directly start the emulation by right-click on the favorite and "Play". However, you usually want to start up with cartridges or disks inserted. So you should define one or more suitable configurations. Look at the right half of the window. There is a row of tabs. One of them reads "devices". Enter a name for your configuration, like "Config 1". Once you type into the field, the "save" button on the very right becomes active. Choose the sub-tab "Device mappings". You can use the buttons to open a file chooser. For example, to launch RXB you should insert the path to the RXB RPK file in the "cartridge" line. Go to the next sub-tab "slot options". In slot 8 you should now insert a disk controller. I recommend the HFDC controller. You can select further peripheral cards in the other slots. Save the configuration. The name of the new configuration should show up in the "Stored device configurations" field. You can now launch the emulation by double click on the configuration name. Always keep in mind that if you want to swap disks or change cartridges you should use the OSD menu that you activate by first changing to partial keyboard mode, then press TAB. QMC2 is only used on startup; it cannot replace the internal menu system.
-
LOL ... I cannot watch the video because: "This video is unfortunately not available in Germany because it may contain music from UMG for which we have not yet reached an agreement with the GEMA." (GEMA is an institution that manages royalties for artists in Germany. There is an ongoing debate between GEMA and Youtube because the GEMA model of royalties management is incompatible with Youtube's ad-based system. GEMA sued Google/Youtube, then Youtube put a similar notice stating that GEMA refuses to provide a license, then GEMA sued again because the notice sounded as if it was merely GEMA's fault that the music is not available on Youtube, and unbelievably they won.) OK, let's just go on, nothing to see here, just a dinosaur from pre-digital times exhaling its hopefully last breath.
-
Where did you ... You obviously found that <key>ESC</key> on the MESS manual page. This seems to be a mistake of the page author (not me!), probably copying the contents from somewhere else where the tag <key> has a meaning, maybe with a special presentation style (like bold font or so). Or the author wanted to be really kewl. You don't know XML? In the eXtensible Markup Language, data is structured using nested elements, and these elements are written as <elementname>content</elementname>. So just ignore those <key> and </key>. As Robert already said: MESS has a "full keyboard mode" and a "partial keyboard mode". In the partial mode, some keys are used for emulator control (ESC=exit, F3=reset, P=pause, TAB=menu). In full mode, all keys are used by the emulated system. To switch between both modes, the ScrLock key is used by default. You can change that in the mess.ini file (uimodekey property). If you do not yet have a mess.ini file you should create it by invoking mess with the command line argument "-createconfig". Also see http://www.ninerpedia.org/index.php/Change_MESS_menu_mode_key
-
Well, I said it and also put a notice on ninerpedia that you need a JRE. JAR files are actually zip files, so it is no surprise that your system suggested to unzip it if you did not have thr JRE installed.
-
You know I'm here to help anyone with MESS, so if there are problems, I would appreciate if you report them to me. In most cases there is a simple remedy. "Some years ago" or similar means you missed all my fixes in the meantime, so maybe you would find a quite new experience right now.
-
Assembler A instruction: Carry vs. Overflow status bits
mizapf replied to gregallenwarner's topic in TI-99/4A Development
Two possible reasons: We don't have the hardware description at that level. We're already happy to have specifications that are detailed enough to come sufficiently close to it. We cannot fully simulate all processes happening in hardware. Hardware has the obvious advantage that many things can happen at the same time, e.g. the address bus propagating the address to all attached devices almost synchronously. Emulations are always limited in that respect. -
You're not alone ... this topic is also taking ridiculous turns over here. Some years ago, our government amended the laws for protection of intellectual property by stating that it is unlawful to circumvent an "effective" copy protection. However, they did not specify in what situation or for what purpose this is done. Accordingly, I am (probably) breaching the law simply by viewing a purchased DVD under Linux - because a library must be used that unscrambles the (weak) content protection. It is up to the courts to decide whether this content protection is an effective copy protection or not. Sorry for getting a bit off-topic here ...
-
Assembler A instruction: Carry vs. Overflow status bits
mizapf replied to gregallenwarner's topic in TI-99/4A Development
@matthew180: This is essentially what I said (or meant to say). The arithmetic operations except for MPY and DIV are not dependent on signed or unsigned arithmetic. Overflow always means that when interpreting the numbers as signed, the sign of the result is not consistent with arithmetic rules. In that context, I found it particular interesting to see that CLR R0 S R0,R0 sets the carry bit. Failing to do this was one of the ugly bugs that I had in the 9900 emulation in MESS. This gives some insight into the internal subtraction operation. -
Assembler A instruction: Carry vs. Overflow status bits
mizapf replied to gregallenwarner's topic in TI-99/4A Development
Another note: Multiplication on TMS processors provides 32 bit results. You can, of course, ensure that your operands are positive and then correct the sign. But you have to do this on the 32 bit result. -
Assembler A instruction: Carry vs. Overflow status bits
mizapf replied to gregallenwarner's topic in TI-99/4A Development
Actually, it does both at the same time (unsigned and signed). The difference is in your application's point of view. For unsigned values there is no overflow; only carry. The only command where signed vs. unsigned matters in the result is multiplication and division, for which reason the TMS9995 has specific MPYS and DIVS commands. -
Assembler A instruction: Carry vs. Overflow status bits
mizapf replied to gregallenwarner's topic in TI-99/4A Development
7777 > 0, EEEE < 0, accordingly, the OV is set. You just added two positive numbers and got a negative result, which is not possible from an arithmetic viewpoint. 9999 < 0, so actually you are subtracting from 7777 when you add it. One argument is positive, one is negative, result is 1110 > 0, so this is plausible. -
For this very reason, we cannot include any ROMs in MAME/MESS, so you always have to get them from somewhere else - officially, from your own hardware. However, as for that, I'm not really convinced that copying the own ROMs is legal in all cases. The "fair use" clause is only valid in the US copyright; here in Germany we do not have such a clause (and lawyers are having a prosper life). While for TI-specific emulators there may be an agreement with TI (isn't that the case at least for PC99?), for a multi-system like MESS this is simply impossible, with more than 700 systems.
-
No, this is where Forth programs are written in the proper direction.
-
http://www.ninerpedia.org/index.php/File_systems
-
Sure, the difference comes from the VDP interrupt rate in the console. The programs are all the same. You can get that in MESS as well when you compare ti99_4ae versus ti99_4a.
-
Which means that games run about 16% slower on European consoles if they depend on the VDP interrupt. Mind that our VDP interrupt is at 50 Hz, while NTSC is at 60 Hz. Sprite automotion is definitely affected.
-
I also had one, but the switch showed some wear of its own after a short time - more a kind of sliding smoothly into a slot. Once I had my Geneve, this problem was less relevant, of course.
-
I already guessed you're doing this project in order to do some JavaScript programming; I think you did say so at the beginning. You're spending quite some efforts here, so I just wanted to avoid a "could've told me earlier..." :-)
-
Just to make sure you know ... there is also JSMESS, a project that is unrelated to the mainline MAME/MESS development. They ported MESS 0.142 to JavaScript, so it is somewhat outdated (with all the glitches that have been fixed in the meantime) but still pretty impressive. http://jsmess.textfiles.com/ http://archiveteam.org/index.php?title=Javascript_Mess This is not intended to put you off your implementation, of course. :-)
-
Since we have at least two different Linuxes where it fails, it could be that you use a special library that is not available for all platforms. Maybe you could design a minimal test Javascript that is supposed to show an empty screen, and we'll see.
-
Length byte at line start. Example of a DV80 file (GeneveOS AUTOEXEC file) 000000: 08 45 43 48 4f 20 4f 46 46 03 56 45 52 4b 45 43 .ECHO OFF.VERKEC 000010: 48 4f 20 46 6f 72 20 6d 6f 72 65 20 69 6e 66 6f HO For more info 000020: 72 6d 61 74 69 6f 6e 20 61 62 6f 75 74 20 74 68 rmation about th 000030: 65 20 47 65 6e 65 76 65 2c 20 69 6e 63 6c 75 64 e Geneve, includ 000040: 69 6e 67 20 64 6f 63 75 6d 65 6e 74 61 74 69 6f ing documentatio 000050: 6e 2c 20 6c 61 74 65 73 74 36 45 43 48 4f 20 47 n, latest6ECHO G 000060: 65 6e 65 76 65 20 4f 53 20 72 65 76 69 73 69 6f eneve OS revisio 000070: 6e 2c 20 74 6f 6f 6c 73 20 61 6e 64 20 61 70 70 n, tools and app 000080: 6c 69 63 61 74 69 6f 6e 73 2c 20 76 69 73 69 74 lications, visit 000090: 04 45 43 48 4f 2b 45 43 48 4f 20 68 74 74 70 3a .ECHO+ECHO http: 0000a0: 2f 2f 66 74 70 2e 77 68 74 65 63 68 2e 63 6f 6d //ftp.whtech.com 0000b0: 2f 69 6e 66 6f 2f 67 65 6e 65 76 65 2e 68 74 6d /info/geneve.htm 0000c0: 6c 04 45 43 48 4f 32 45 43 48 4f 20 46 6c 6f 70 l.ECHO2ECHO Flop 0000d0: 70 79 20 64 72 69 76 65 20 31 20 69 73 20 41 3a py drive 1 is A: 0000e0: 2c 20 68 61 72 64 20 64 69 73 6b 20 64 72 69 76 , hard disk driv 0000f0: 65 20 31 20 69 73 20 45 3a 04 45 43 48 4f ff 00 e 1 is E:.ECHO.. 000100: 0f 50 52 4f 4d 50 54 20 24 6e 3a 5c 24 70 24 67 .PROMPT $n:\$p$g 000110: ff 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
-
Use a character not allowed in user input, e.g. "§". Then 100 VERB=POS("OPEN§HIDE§CROUCH§LIE§LOOK§EXAMINE§GO§RUN...§", WORD1, 1) with WORD1 being appended a "§".
-
Well, you can try an estimation - seriously. We have a 3 MHz clock, and you must be able to transmit all line states *at least* at that rate. Maybe there are situations where you are required to delay signals for some few nanoseconds, so this could require to significantly push up the rate (say, 5 times). For now we assume everything can be set at each 3 MHz clock tick (333 ns cycle time). Then we have a bidirectional bus; some lines (address bus) only go to the box, the data bus goes back and forth, and other signal lines are also either inbound or outbound. Let's just assume that we go outbound. We have 16 address lines, 8 data lines, DBIN, RESET, CRUCLK, WE, MBE, MEMEN, and IAQ, so these sum up to 31 line states, each 0 or 1, to be transmitted at 3 MHz. This will result in 93 Mbit/s, if, as I said, the peripheral cards are OK with getting all signals at a single instant, which may be a false assumption, so you may be forced to use a multiple of that rate, and then you are already heading towards Gigabit Ethernet. The problem is that not all the 31 bits will actually change all the time every 333 ns, but they *could*. One special thing is the AUDIO IN which is an analog line ... will need to be handled separately.
-
Mee too, I only see a black canvas, start button can be pressed without effect, stop button cannot be pressed, and the load dropdown is empty. My web developer console inside Firefox 28.0 (openSUSE 13.1) says: * Use of getUserData() or setUserData() is deprecated. Use WeakMap or element.dataset instead. (requestNotifier.js:64) * The character encoding of the HTML document was not declared. The document will render with garbled text in some browser configurations if the document contains characters from outside the US-ASCII range. The character encoding of the page must be declared in the document or in the transfer protocol. (index.html) * ReferenceError: webkitAudioContext is not defined (AudioLooper.js:27) At the same time, the console where I started Firefox says: JavaScript error: https://googledrive.com/host/0B68J8LwEkfDyTUdTQWlVN0VPaEU/tss/AudioLooper.js , line 27: webkitAudioContext is not defined JavaScript error: http://atariage.com/forums/public/js/3rd_party/ckeditor /ckeditor.js?nck=fb99e14e49767998a66e3b7a9956074d , line 145: u.data.html is undefined JavaScript error: http://atariage.com/forums/public/js/3rd_party/ckeditor/ckeditor.js?nck=fb99e14e49767998a66e3b7a9956074d , line 145: u.data.html is undefined GRRRR ... HOW CAN I TELL THIS !"§$/$% EDITOR TO STOP CREATING HYPERLINKS!
-
In principle, yes. If emulation does not suffice for you. I know, many people believe in what they can grasp with their hands, but many old systems will probably not be worth the effort to rebuild them, but we can get an experience with emulation. I'd be really interested how the 99/2 felt like or the CC-40 (the former already being implemented in MESS but not working, the latter envisaged to be added). Or the 99/4B and 99/5 which I believed to be phantoms until I recently saw obviously existing prototypes on the Web. BTW, anyone coming to Birkenau on Saturday with a Hexbus floppy drive? I'll bring the screwdriver. :-)
