Jump to content


  • Content Count

  • Joined

  • Last visited

Everything posted by brain

  1. A real shift register is in the 1571/1581 drives. The C128 and those drives call its use "burst mode". FOr the 64, you can use the existing shift register in the 64 to enable the same thing: https://a1bert.kapsi.fi/Dev/burst/
  2. I do have a board designed, produced and sitting on the desk to be stuffed, but it didn't look like demand was high, and I didn't want to poach stuff from your efforts. Jim
  3. No, I was talking about yours that you sell. Maybe I'm wrong and you're selling tons of them.
  4. Greg (ArcadeShopper) has them in his store: https://www.arcadeshopper.com/wp/store/#!/HEX-TI-r-HEXBUS-disk-drive-emulator-assembled-and-tested/p/219106097/category=27454942 Jim
  5. It's on my list, but time is short at present. Not sure how generally useful it will be as I think only a few have availed themselves of HEX-TI-r units, so demand appears to be low. jim
  6. I know the following examples are in C, but I believe they will translate to ASM quite well: https://github.com/go4retro/c-key/blob/master/src/poll64.c As others note, use a lookup table for the main scan codes. Many are a 1-1 mapping. The first thing to do in the code is watch for a scan code. Then, for a few compares. E0,E1,F0 and such are special modifiers. Handle them special, and use a state machine to keep things in order. Then, as you get to the main char code, reference into a lookup table. if the result coming back has a high bit clear or something, use as the exact key to send. If the high bit is set, assume the code is an indirect code location reference. strip off the high bit and jump to that code. That way, you can handle special cases. Most keys are of the form (I think scan set 2, but could be 3) <char> and $f0 <char>. Extended chars are $e0 <char> and $e0 $f0 <char> (I might have the $e0 and $f0 backwards, check the code). The only 2 that are truly bizarre are print screen and pause/break. printscreen tries to handle a key down/key up sequence all on the downpress, so it can be handled like the others if desired, but I did it special. Print/Screen is just bizarre and I handled it with the main state machine. You can choose the ignore the $e0 if you want, as the $e0 keys end up factoring back into their reguar versions if you strip it. (1 on keypad is extended version of 1 on main keyboard). Jim
  7. 24 x 21 bits is 3 bytes x 21 = 63 bytes. 24 x 24 would be 3 x 24 = 72 The first fits nicely into memory along binary boundaries (2,4,8,16,32,64). The second, not so much. Thus, the first allows the VIC-II to make a rule: sprite data must be aligned on a 64 byte boundary Then, the pointer for the sprite data doesn't need to store the lower 6 bits of the address, since it will always be 0.
  8. Anytime you can meet fellow enthusiasts face to face is a fun time! Jim
  9. I can't say for sure, but I think TI notated things that way on the 99/4a. FOr instance, the addresses are A0-A15, where A15 is the LSB. I'd expect the data lines to be the same
  10. This is a classic "crystal into oscillator" circuit. I could explain it, but others do much better than I https://learnabout-electronics.org/Digital/dig51.php https://electronics.stackexchange.com/questions/489785/2-pin-crystal-oscillator-crystal-oscillator-circuit-explanations You can use the same circuit for any device that needs a "clock" input, not a crystal input (BTW, ICs that use a crystal input just put the left hand circuit on the IC itself. The 2 inverters on the right "boost" the signal from the generator, which can't take a lot of load itself. ONly 1 is needed, in my opinion, becausing inverting the clock won't change anything, so turning it right side up is unneeded, but maybe they had an extra gate and it was easiest to just put it in play.
  11. brain

    RDY pin on 6502

    You can't stop the clock on most 6502s, as they CPU is not a static design (it will lose state if not clocked often enough). Thus, RDY exists. Jim
  12. It looks there is enough data there to recreate the mod, but I agree that the lack of attention suggests some issues. I'm working on a 4MHz design, but not using this idea. Not sure if it'll pan out though. Jim
  13. Hmm, flow control. OK. Well, good that it works for you. Jim
  14. Try leaving off the &C0 and seeing if that helps. Also, if you have a Serial line tester, those are always good to see the difference in signals from the two setups. Jim
  15. Discord is pretty active for CoCo: And the mailing list has been active at times. Jim
  16. Hmmm, there's not a lot of information here, but I can assure you TCPSER works with PETs. 🙂 If the terminal program on the PC works, then at most it's a configuration issue. Try providing the command line you're using here, and turn on debugging and tracing : -l7 -tsSiI and post some of the output here. TCPSER has to play with the RS232 lines to create a DCD line for the PET, and thus you might need a modified null modem cable (as noted in the github repo README), or you might need to tie DCD high all the time... Jim
  17. It might be because the game requires the VIAs to be in the reset state and unconfigured, probably taking shortcuts since it's safe to assume registers are at reset states. And yes, a hard reset would wipe RAM. You might be able to accomplish what you want, though, by using a RAM expansion cart like UltiMEM (caveat, I sell that unit) which has ram that you can writeprotect.
  18. Does it have to be ColecoVision specific? I know some other platforms desperately looking for 76489-based content. Jim
  19. Short answer is absolutely YES. Memory and BASIC have lots of links, so do a google search for those (there were lots of board revs, so it's tough to give general instructions here. Composite is possible as well. Ed Snider offers that kit (https://thezippsterzone.com/). It does require ditching the RF box.
  20. Hm, that is odd, as that's an error from programming, not compilation (I did, though, find a way to fix those two warnings in the latest HEAD revision). Does it have the same issue on any other Arduino boards you might hying around? I'll check a few here. Jim
  21. Can you provide me the errors? The goal of the project is to be able to compile as any combination of peripherals, drive, clock, serial, printer, so any errors should be bugs that we can fix. Mind you, Peter and I are working on the code right now, and since I am using releases for "good" versions, the changes are in master, so I'd not recommend dloading the tip of the repo right now, as there might be errors (I'm swatting the bugs as I find them or folks find them for me). You cna also record the errors on the github repo under "issues" link, and I can work them from there. Thanks.
  22. I think there are actually 3 sections, maybe even 4, but that's because the config.h file is set up with various "hardware configs", and config #3 is the Arduino config. That's the only one you need to uncomment. I put the defines in each config separately so each hardware variant could choose which features to enable (you could technically enable the serial and parallel without the drive functionality). Jim
  23. Not to be pedantic, but the SD-interface *DOES* have a printer and a serial interface, depending on how folks configure their hardware. I will concede that they are less used than the SD interface, but I don't think we can say they are unneeded for normal operation. If you were using the printer or the serial, they absolutely are needed 🙂 But, yes, you can comment one or both out, and reduce the code size. Jim
  24. Temporarily, you can comment out line 232 in config.h (turns off printer). It appears the sketch is right at the limit of the size, and depending on how I compile it, it's too big. I'll see if I can trim a bit (it's only over by 75 bytes when it compiles too big. I was able to compile it with all functions on, but it looks like it depends on what has been cached. Or, you can use avrdude to load in the precompiled files in the m328-arduino directory, which are compiled using the native makefile system, and are smaller (The Arduino IDE compilation is not as compact, 29K versus 32K). Jim
  • Create New...