Image Map Image Map
Page 9 of 14 FirstFirst ... 5678910111213 ... LastLast
Results 81 to 90 of 131

Thread: Tek 405x web-browser emulator

  1. #81

    Default

    Roland,

    did you put a Control-E as the first character of the CALL "EXEC" command?

    Thats what I see in the article on the 4052A assembler.

    Monty

  2. #82

    Default

    Quote Originally Posted by GanjaTron View Post
    Incidentally, I tried the Gumowski listing posted here earlier, and that actually triggered a SYSTEM ERROR on my 4052 at the bottom of the screen, along with what appeared to be a memory dump. The offending statement was the READ in line 130, which kicked off the magtape, even though it's supposed to default to DATA statements according to the manual. Weird...

    --Roland
    Wow - a READ statement defaults to getting DATA from a DATA statement - looks pretty harmless.

    Maybe you still have a bad RAM and the read got an illegal value for a DATA item?

    Monty

  3. #83

    Default

    I added Tektronix keys to the emulator layout - to address the difference in location of punctuation characters and moved PAGE and BREAK to that key row

    I made a new pull request, Jon.


    Monty
    Attached Images Attached Images

  4. #84
    Join Date
    Jun 2012
    Location
    UK - Worcester
    Posts
    1,866

    Default

    Monty,

    I like the key graphics!

    Here is where I have got to on the 4052 emulator. I have added the extension instruction mnemonics to the table (along with the estimated number of bytes for the new instructions). The mnemonics start with a '?' for the extension instructions. I have assumed 2 bytes for an IMMEDIATE addressing mode for the extension instructions - but this may be 3 (or more) bytes...

    I haven't included the I/O yet.

    On startup it is generally silent (except where it tries to peek/poke I/O ports). It also alerts you when the memory test gets as far as the CONSTANT ROM at 0xE000 (and tries to write to it).

    As soon as it hits a 4052 extension instruction - it reports the instruction and starts a trace of instruction execution and register contents from there onwards.

    The trace seems to indicate to me that the logic is stuck in a loop trying to perform some sort of test using the extension instructions - and it keeps getting the wrong answer (as they are not implemented yet)...

    I think next we need a proper description of the extension instructions. The 4051 FPMATHS does give us a clue for some of the instructions - but not all of them...

    I may have a think about disassembling the microcode whilst I am away on my business trip. Watch this space.

    Anyhow, here are the files if you are interested.

    Regards - and keep up the excellent work.

    Dave
    Attached Files Attached Files

  5. #85

    Default

    Dave,

    Maybe it would be interesting to 'plug' Jos's 4052 Diagnostic ROM into the 4052 emulator and let it run the emulator looking for problems. You would need to add the port that is written to for the diagnostic LEDs - and I guess the input port where the diagnostic rom reads the DIP switches to select a test.

    That diagnostic rom has to be simpler to disassemble than all the other roms in the emulator.


    Monty

  6. Default

    Quote Originally Posted by daver2 View Post
    Monty,

    I like the key graphics!

    Here is where I have got to on the 4052 emulator. I have added the extension instruction mnemonics to the table (along with the estimated number of bytes for the new instructions). The mnemonics start with a '?' for the extension instructions. I have assumed 2 bytes for an IMMEDIATE addressing mode for the extension instructions - but this may be 3 (or more) bytes...

    I haven't included the I/O yet.

    On startup it is generally silent (except where it tries to peek/poke I/O ports). It also alerts you when the memory test gets as far as the CONSTANT ROM at 0xE000 (and tries to write to it).

    As soon as it hits a 4052 extension instruction - it reports the instruction and starts a trace of instruction execution and register contents from there onwards.

    The trace seems to indicate to me that the logic is stuck in a loop trying to perform some sort of test using the extension instructions - and it keeps getting the wrong answer (as they are not implemented yet)...

    I think next we need a proper description of the extension instructions. The 4051 FPMATHS does give us a clue for some of the instructions - but not all of them...

    I may have a think about disassembling the microcode whilst I am away on my business trip. Watch this space.

    Anyhow, here are the files if you are interested.

    Regards - and keep up the excellent work.

    Dave
    Thanks for attaching the files, I'll look through them. I was thinking we could keep the mc6800.js the same for both emulators and only the 4052 firmware would make use of the extended capabilities.

    I'd like to merge your mc6800.js updates with the copy in Github and upload the 4052 HTML and js code so you can create pull requests for easier merging to the master copy. I'm hoping the code for the display, keyboard, GPIB, and ROM are similarly structured in the js that I can reuse the restructured code I did for the 4051.
    "One man's garbage is another man's treasure."

  7. #87
    Join Date
    Jun 2012
    Location
    UK - Worcester
    Posts
    1,866

    Default

    Good thinking about the diagnostic ROM/RAM (although disassembly is not a problem - as the emulator performs this on the fly). It would, however, be good to get the 4052 emulator running with something as a 'proof of concept'.

    The mc6800.js should be fine for both the 4051 and 4052. Maybe a few 'if' statements required to customise the code? I think there is a litttle way to go yet before we start to integrate the two together. I think I have found where the vectors are located (in CONSTANT ROM) and have already disassembled the reset and (what I think is) the NMI vector.

    The HTML file should be pretty consistent too.

    I would feel somewhat happier about identifying what these darn instructions do (even a simple explanation of them).

    Dave

  8. #88

    Default

    Quote Originally Posted by nikola-wan View Post
    Wow - a READ statement defaults to getting DATA from a DATA statement - looks pretty harmless.

    Maybe you still have a bad RAM and the read got an illegal value for a DATA item?

    Monty
    I wouldn't rule out yet another bad RAM, which is why I've ordered the diagnostix module rebuild from Jos. I've had those weird SYSTEM ERRORs come up a few times when the tape goes wrong. The fact is however, it shouldn't have even tried to READ from tape in the first place, so that's doubly bizarre.

    As for CALL EXEC with CTRL-E... never saw that before. I'll have to try next time I'm home with the 4052 at hand. That won't be for another few, uh, months...

    FWIW, I have the v5.1 firmware, which I think was the last one released for the original 4052. Dumps can be found on Jos' FTP site, and I think I have them on my Goggle Drive too.

    Btw, where can I upload some tape images? Somebody mentioned putting these into git?

    --Roland
    "END OF LINE" [MCP, 1982]
    "An admin that isn't a bit hackerish is just the guy mopping up the keyboard" [Phrack V0b I3f P12]
    "Any appearance of danger is simply a device to enhance your experience" [Futureworld, 1976]

  9. Default

    Quote Originally Posted by GanjaTron View Post

    Btw, where can I upload some tape images? Somebody mentioned putting these into git?

    --Roland
    I don't know if https://github.com/jonbstanley/Tek405xEmulator is a good place for these images, but you could make a fork from this master branch, create a new folder and add the tape images, then generate a pull request for me to bring it back into the master.

  10. Default

    Quote Originally Posted by daver2 View Post
    Good thinking about the diagnostic ROM/RAM (although disassembly is not a problem - as the emulator performs this on the fly). It would, however, be good to get the 4052 emulator running with something as a 'proof of concept'.

    The mc6800.js should be fine for both the 4051 and 4052. Maybe a few 'if' statements required to customise the code? I think there is a litttle way to go yet before we start to integrate the two together. I think I have found where the vectors are located (in CONSTANT ROM) and have already disassembled the reset and (what I think is) the NMI vector.

    The HTML file should be pretty consistent too.

    I would feel somewhat happier about identifying what these darn instructions do (even a simple explanation of them).

    Dave
    Have you checked the latest mc6800.js in Github? I reorganized how the code is structured and especially the function calls between mc6800.js and TEKTRONIX4051.js so it is easier to follow the dependencies. I also already did add in the Tek extended instructions in the Github copy of mc6800.js. Might save us both the trouble of merging in the future if we merge early when there are fewer changes.
    "One man's garbage is another man's treasure."

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •