Tuesday, 18 March 2014

New Release, (Build 14)


I have upgraded it to Build 14. The changes since the last one are :
  • Added checksums for all known cartridges that are dumped in their current state. If this changes because dump errors turn up, the paddles will work differently.
  • Sea Duel now displays the flag properly (see the 2nd picture from the left - it's meant to be the Stars and Stripes ....). The LCD latency trackers do not change when there are no addressable->output latches in a frame - static displays with only one row/column pair.
  • Sea Duel now plays the tune (albeit it sounds terribly stuttery on Windows XP/Virtualbox, though it seems fine on Mac ?).  Might be a VirtualBox issue.
  • Sea Duel assumed TMS Data Memory was all zeroes on start up, the spec doesn't say this, but it probably is in practice. I suspect this is because they aren't cleared on reset, which isn't quite the same things cleared on power up - you can reset a TMS1100 mid program, but you can't do this with Microvision games.
  • The CPU speed now is correct for some programs (Sea Duel sounded squeaky because its clock is half the speed)
  • The Paddle controls are calibrated for known cartridges, so it is possible to play Baseball which has a way-out range. Other new games (e.g. Connect 4, Super Block Buster) now enable the paddles when loaded.
  • It now starts in run mode. To run in debug mode, prefix the name with an @ (e.g. mvem @sbb.bin)
  • The screen size can be changed by adding wwwxhhh e.g. mvem mind.bin 320x200

Windows and OSX executables are downloadable from the sidebar on the right. The source is in the OSX executable (and is the same for Windows, save for the build process).

5 comments:

  1. Hi Paul. I'm bit confused about TMS1100's PC register(Shift Register). Can you point me some doc about it? I'm trying to understand how it's incremented.

    ReplyDelete
  2. I'm not entirely sure how it is wired, but it is an LFSR http://en.wikipedia.org/wiki/Linear_feedback_shift_register because it requires less circuitry.

    ReplyDelete
  3. Ok, thanks. I'm trying to write an microvision emulator. Are you planning to write your own doc about microvision like you did about RCA Studio 2?

    ReplyDelete
  4. Once you understand the Hughes LCD Driver, then it's just wiring it to an 8021 or a TMS1100.

    ReplyDelete
  5. Fig 19 in patent 4024386 shows the LFSR circuit. Here's the sequence:

    0 1 3 7 15 31 63 62 61 59 55 47 30 60 57 51
    39 14 29 58 53 43 22 44 24 48 33 2 5 11 23 46
    28 56 49 35 6 13 27 54 45 26 52 41 18 36 8 17
    34 4 9 19 38 12 25 50 37 10 21 42 20 40 16 32

    ReplyDelete