Loading ...
Sorry, an error occurred while loading the content.

7675Re: [cosmacelf] Enhanced SimElf Simulator in JavaScript -- (pre-announce)

Expand Messages
  • Aurel Boisvert
    Jun 1, 2011
      I just tried it with FireFox 4.X running on Windows 7.
      Worked fine.

      On 31/05/2011 10:23 PM, whd_whd_whd wrote:
      > I've been messing around with the SimElf JavaScript simulator
      > originally written by Maciej Szyc in 2005. He published it as GNU GPL
      > 2+. I've e-mail corresponded with him and he is supportive of my efforts.
      > Over the last week or so, on and off, I have enhanced it quite a bit
      > to make it "better" and more usable and user-friendly. I've also
      > corrected some severe bugs I found. (which effectively made it
      > unusable -- Maciej wrote it and never tested or debugged it) I'll list
      > below what I've done and intend to do, from the internal
      > documentation, and more that is not mentioned.
      > It's still not done, but getting there, and is a lot better than the
      > original. (in a sense) Basically, I consider it more or less usable
      > right now, in the sense that it is more than a COSMAC Elf "black box"
      > with only switches and a two-digit hex display and a Q LED. It's a bit
      > slow (mostly with the display/LED updates), but not too bad. It's more
      > or less usable. Especially as an easy-to-use and user-friendly
      > intro/trainer. (and just fun to play with if you're into that sort of
      > thing)
      > So I decided to show it to you as an unfinished "rough draft". Let me
      > know what you think if you get a chance to look at it. It might take
      > me a few more weeks+ or so to finish it off the way I envision it,
      > depending on how much I work on it. (although I have a feeling that
      > this is going to be a LONG TERM project) Remember that not all of the
      > features and functionality are supported at this point, some of which
      > are evident and present but non-functioning.
      > I'm kind of calling it the COSMAC Elf^2. (squared) [working title]
      > http://www.donnelly-house.net/programming/cdp1802/simelf/cosmacelf.html
      > (I like to run it locally as a file:// program, so that format is
      > supported, and will be additionally supported as a ZIP archive download)
      > NOTE: It currently works in Firefox 3.x and Opera, and Google Chrome I
      > think, but not IE (9). I may or may not support IE.
      > There is no HELP right now, so the quick-use description is as follows:
      > AFAIK, the basic unit works like the original hardware COSMAC Elf did,
      > the way the switches are used to enter and run programs. As anyone who
      > has used the switches to enter programs knows, that can quickly become
      > tedious and tiresome. Plus the limited I/O available. So I have added
      > some features and functionality to make it easier and funner to use.
      > More will be added later to extend it quite a bit.
      > DOUBLE-click on the 7-segment LED's image(s) to enter "Hex Keypad
      > Entry Mode". There are a few modes that sequence through the
      > double-click selections. The first is just a quick auto-enter with one
      > byte per two-digit hex entry. The other two modes require an ENTER
      > and/or SPACE key to enter and move on. ESC or taking it out of Load
      > Mode with the toggle switch takes you out of hex entry mode. It is
      > also temporarily out of hex entry mode when the Memory Dump and
      > Program Load "window" is activated. This makes it MUCH easier to enter
      > programs.
      > The Memory Dump and Program Load "window" is activated by clicking on
      > either of the memory IC chips at the top. This "pops up" a "window"
      > (hidden and unhidden HTML div). This offers some additional program
      > entry options, as well as Memory Hex Dump, DisAssembly, and Program
      > Load from hex text and built-in programs. It's fairly understandable
      > without too much explanation, I think. The two check boxes don't work
      > yet. I have to decide which formats of hex dump entry I want to
      > support. But it does support "starting address specification" and
      > "line addresses" with a default to 0000. You can see how the
      > "built-in" programs to load are specified in 1802programs.js, which
      > I've added several programs to.
      > Right now it has 1K RAM instead of 256 bytes. This can be changed if
      > desired. And I probably will offer various selectable sizes up to
      > maybe 64K. I also might support a form of ROM memory.
      > Changes and to be changed:
      > * Brightened switches and "7-segment" LED images (also made OFF and
      > green LED versions)
      > * Added "COSMAC ELF" 'logo' text (image -- click for "About...")
      > * Cleaned up and streamlined JavaScript code and HTML specification
      > ** cosmacelf.html, simelf.js, 1802cpu.js; created 1802programs.js;
      > added 1802disasm.js
      > ** Prefixed and renamed variable names
      > ** Formatted code (whitespace, etc.)
      > ** Changed from HTML Tables to Divs and changed FONT tags to SPAN
      > ** Fixed several bugs and added speed enhancers
      > * Added memory dump and load form functionality and access via CDP1802
      > chip click (oops, memory chips click -- will correct)
      > * Added mnemonic list functionality (DisAssembly)
      > * (future) Added debugger window w/single step, breakpoint, etc.
      > * (future) Offered ZIP archive so user can install and use it locally
      > off-line
      > * (future) Added "check for more recent update version" functionality
      > I also intend to add:
      > * Enhanced emulator interface that displays internals and more I/O and
      > switch options. (instead of the COSMAC Elf interface -- kind of an
      > enhanced "front panel" a la the good old days of blinking LED's)
      > * CDP1861/64 graphics chip output support.
      > * A terminal emulator for output and keyboard input. (VT-100?)
      > * Possibly saving and loading programs from disk. (when used locally)
      > * An assembler and "machine language" entry.
      > * Other fun stuff.
      > Enjoy.
      > - Bill


      [Non-text portions of this message have been removed]
    • Show all 13 messages in this topic