Jump to content

ralphb

Members
  • Posts

    972
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by ralphb

  1. Yes, unfortunately I forgot to add this to the relaxed version. It shows that I don't have automated tests for this plugin, but I don't want to spend the enormous effort to create those. Anyway, register symbols are fixed for version 3.3.2. I also improved highlighting and code formatting (forgot sign handling, which was non-trivial to add) and fixed the tab stops for GPL. EDIT: If everything is OK I'll do another release next weekend.
  2. I've released a new version of the IDEA plugin. I'm now using a different completion mechanism, which I limited to label uses. Please let me know if there are still instances where completion doesn't work, or other instances offering a completion where it makes no sense.
  3. I agree, and I only use it for assembly development or testing, where I'm typing more than a few keystrokes. Emulated mode is fine, but since I don't use MAME that often I find searching for active keys among öäü#+ß and the out-of-place - a bit irritating. ?
  4. Thanks for all your findings. I fixed almost all: % char: I forgot to add % to the list of forbidden chars for symbols AORG, X#, and BANK: fixed the grammar Alias registers: I already had numbers, but I forgot labels. I've added those, but note that checking if numbers or labels are actually of value 0 to 15 is computationally prohibitive R0 for shift instructions: added rule to grammar version number: fixed (thanks!) I also fixed the new warning about expressions with non-standard evaluation, which produced false positives. Single quotes for filenames (COPY 'DSK1.FOO'), though, is a syntax error for both Editor/Assembler and xas99. Thus, I'd rather not change this. Unfortunately, for the non-working completion I have no idea, so I've asked Jetbrains support about this I suppose IDEA cannot figure out which type to complete, but I don't know why. Because of that open issue, I'll not release the fixed version just yet.
  5. I'm having problems of setting or toggling ALPHA LOCK in natural mode. I assume the first entry is for toggling, i.e., pressing that key once will switch from ALPHA LOCK on to off, and vice versa. But what does it mean if the selected key is shown in grey? Basically everything I change is grey and doesn't work. Can the key not be used, or do I need to somehow "save" the new setting?
  6. Thanks, that is very helpful. I'm not really into Java, and I don't fully understand all those build systems, which IDEA thankfully handles all by itself. I'll apply your fix.
  7. Thanks for testing the plugin right away, please keep the issues coming. But what do you mean by alternative registers? A bunch of names EQU'ed to 0, ..., 15? What exactly is the problem?
  8. Sorry, you're right, that is a bug. I didn't even remember setting an upper version limit ... I'll fix it tomorrow.
  9. Yes, unfortunately I had to make some choices during development, which means you need at least version 2020.3 for the new plugin (not sure how that translates to those internal versions 212). It also requires Java 11, but I guess that comes with the IDE?! What version do you use currently?
  10. I've just published a new release of xdt99. While the changes to the tools are minor, I spent a lot of time on the Emacs mode and especially on the IntelliJ IDEA plugin, bringing the grammar up-to-date and implementing a lot of more features. The idea plugin supports assembly (with related families supported by xas99), GPL, and TI BASIC and TI Extended BASIC. There are also variants for the new relaxed syntax and BASIC with labels. If you have no idea what IDEA is, or what the plugin does, or if you're happy with Notepad+, or do not like "bloaty" tools, please do have a look at the IDEA plugin manual with images that demonstrates the TI-related functionality. Emacs fans might want to check out the Emacs mode, even though it is much more limited.
  11. With xas99, you could do xas99.py -l yourobjectfile.obj -b -o theexecutable.bin which basically "links" your object code into a binary. You'll need to supply a start address with "-a <addr>", though, if the object code is relocatable.
  12. Oh, that makes sense! My bad, I didn't think of that, and chose my examples very poorly. ? But I also didn't know you can create arrays en passant without a DIM. Anyway, sanity restored.
  13. I'm totally flashed by the fact that the following TI BASIC program runs fine and outputs 1 and 0. 10 A=1 20 B=NOT(A) 30 PRINT A;B Same for AND and OR (with two arguments). Those functions also work for IF. Looking at the TI BASIC Reference manual, I find no mention of these boolean functions. Also, the reference suggests using * for AND and + for OR, like I did back in the day. Do I suffer from amnesia, or is this also news to some people? EDIT: Tried on real iron, without peripherals.
  14. This might work in most cases, but to be on the safe side, view the file in GitHub, and then either select Raw and save the file, or select View Raw (if the file has no actual preview).
  15. I've released a new version of xdt99 with improvements to all tools, but focusing mostly on xas99 and xga99. The new features are a relaxed syntax for xas99 and xga99 allowing arbitrary spaces in and between operands, a much improved cycle counter for xas99 with support for user-provided fine-tuning, pragmas for xas99 that influence assembly, warning categories for xas99 and the ability to suppress individual categories, and unused symbols for xga99. Additionally, all tools now support color and offer a new environment variable to store default options for each tool. To learn about these new features (and any future features), I've created a new file MANUAL.diff showing just the additions to the manual. This way, an experienced user does not have to re-read the manual again and again. The cycle counter should be very accurate and account for addresses and workspace. Additionally, pragmas may provide hints for unknown target addresses such as *R1 or @>20(R2). The relaxed syntax, activated with -r, makes no assumptions about spaces, but requires that all comments (except for * comments) be preceded by semicolon (;).
  16. Interesting! Ian replied that there's a reason he doesn't do component cables for the TI: Do you notice that the Sony's picture is off-color, Klaus?
  17. Thanks Klaus, I asked Ian if he can build one for me. Technically, I should be able to build one myself, but I doubt it'll look as tidy as that one. ?
  18. At least for the FinalGROM I never intended the SD card to be sole container for important files. With the exception of write back (e.g., Mini Memory), all files are read-only anyway. And for the upcoming *cough* SDD 99 it's easy to backup files on microSD to your PC.
  19. SD cards are weird. I also experienced the behavior you mentioned, and I don't really know why. The SD cards rejected by the FinalGROM work seemingly fine on a PC. The FinalGROM doesn't support any kind of fallback in case the serial I/O doesn't work any more. Most PCs (and the SDD 99) rely on 4-bit parallel I/O, which (speculation mode on) might use different logic inside the flash controller. Fortunately, SD cards are cheap enough to not worry much about these rare failures.
  20. Yes, exactly. Which also means the formulas in the Data Manual are garbled.
  21. I've just finished timing LDCR, STCR, and the shift operations. For STCR, it turns out that the datasheet is correct but the data manual isn't: There are four cases: <8, 8, >8 and <16, and 16. The data manual only lists 2 cases.
  22. OK, thanks! So it's one "phi" and the wait states are the multiplexer. ?
  23. I seem to remember having a discussion about clock cycles on the TI 99 before, but for the life of me I just cannot find it. So please don't mind me asking again ... How long is a "cycle" on the TI 99 to begin with? Is it one "phi" or four "phis"? For a 3 MHz clock, that'd be 1/3 us or 4/3 us, resp.? 4/3 us seems awfully long, as a typical multiplexed read cycles takes 2 us. And do the 4 wait states for memory accesses already include the cost of the multiplexer?
  24. Thanks for the suggestions, H454. It is indeed an RGB cable, which cannot be used for the TI 99. He also sent me his (or her) wiring, and they connected R-Y of the TI to GND, which doesn't have a connector at all. But I asked the seller if they would do a custom cable for me, since the RGB cable also seems custom.
  25. My new Sony already has a very nice composite NTSC picture (shown too bright here). For component, though, the above cable I ordered doesn't work yet. I tried both the internal and the external component interface, but I guess the pin layout of the TI 99 differs from whatever the seller used. Also, the cable has two connectors labeled H and V, but I need Sync and Audio. Anyway, I've asked him about the pin layout of the cable, I hope it's compatible.
×
×
  • Create New...