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

RCA VIP keypad

Expand Messages
  • somaspack
    Hi, The manual for the VIP doesn t go into the details of the ROM monitor. I am curious how the keypad functions. It uses a 4515 4-line to 16-line decoder, the
    Message 1 of 5 , Jul 1, 2013
    • 0 Attachment
      Hi,

      The manual for the VIP doesn't go into the details of the ROM monitor. I am curious how the keypad functions. It uses a 4515 4-line to 16-line decoder, the inputs are D0-D3, the outputs are connected to the individual hexadecimal switches, the common end of all switches are wired to EF3.

      So I suspect that when run, the VIP polls each switch in a loop (0-15), and addresses the 4515, places the relevant nibble on the data bus to enable the key output, and if the key is found pressed - EF3 goes high which would then trigger a branch operation to handle the key press.

      Does this sound correct? Thanks.

      Scott
    • Ray Sills
      Hi Scott: IIRC (since I don t have my VIP manual here at my desk) there was a dump of the monitor code in the the RCA VIP book. In any event, there is a
      Message 2 of 5 , Jul 1, 2013
      • 0 Attachment
        Hi Scott:

        IIRC (since I don't have my VIP manual here at my desk) there was a
        dump of the monitor code in the the RCA VIP book. In any event, there
        is a disassembly of the ROM in the RCACOSMAC Yahoo group. Go to the
        files section and look for VIPER Volume 1, issue 3.

        I think EF3 generates an interrupt and that routine scans the keypad
        leaving the hex data on the data bus. The running program can then
        pick up the nibble and process accordingly.

        73 de Ray

        On Jul 1, 2013, at 6:18 PM, somaspack wrote:

        > Hi,
        >
        > The manual for the VIP doesn't go into the details of the ROM
        > monitor. I am curious how the keypad functions. It uses a 4515 4-
        > line to 16-line decoder, the inputs are D0-D3, the outputs are
        > connected to the individual hexadecimal switches, the common end of
        > all switches are wired to EF3.
        >
        > So I suspect that when run, the VIP polls each switch in a loop
        > (0-15), and addresses the 4515, places the relevant nibble on the
        > data bus to enable the key output, and if the key is found pressed -
        > EF3 goes high which would then trigger a branch operation to handle
        > the key press.
        >
        > Does this sound correct? Thanks.
        >
        > Scott
      • Tom
        Hi Scott, You are correct, with the minor exception that EF3 goes low when a depressed key is detected. This is in response to a hex 62 instruction that
        Message 3 of 5 , Jul 1, 2013
        • 0 Attachment
          Hi Scott,

          You are correct, with the minor exception that EF3 goes low when a depressed key is detected. This is in response to a hex 62 instruction that initiates the 4-to-16 line decoding, which latches its output so that the EF3 line can be tested. Since the CD4545 4-to-16 decoder is used in the VIP, the output line is active LOW, providing the proper EF3 signal. The CD4514 would provide an active HIGH.

          If you would like some insight to the ROM, Lee Hart has provided us with a disassembled listing of the VIP Monitor ROM. You can access this at 
          Disassembled VIP Monitor ROM in the Files section of the group. This is a text file, so you can open it with any text editor or viewer.

          - Tom

          --- In cosmacelf@yahoogroups.com, "somaspack" wrote:
          >
          > Hi,
          >
          > The manual for the VIP doesn't go into the details of the ROM monitor. I am curious how the keypad functions. It uses a 4515 4-line to 16-line decoder, the inputs are D0-D3, the outputs are connected to the individual hexadecimal switches, the common end of all switches are wired to EF3.
          >
          > So I suspect that when run, the VIP polls each switch in a loop (0-15), and addresses the 4515, places the relevant nibble on the data bus to enable the key output, and if the key is found pressed - EF3 goes high which would then trigger a branch operation to handle the key press.
          >
          > Does this sound correct? Thanks.
          >
          > Scott
          >
        • joshbensadon
          Hi Scott, You can also have a look at my VELF firmware. Located in Members-JoshBensadon folder of this group. I used Lee s Disassembled VIP ROM as the
          Message 4 of 5 , Jul 1, 2013
          • 0 Attachment
            Hi Scott,

            You can also have a look at my VELF firmware. Located in Members-JoshBensadon folder of this group.

            I used Lee's Disassembled VIP ROM as the foundation to my firmware. Only the first few bytes are changed to accommodate the option of booting this hybrid system into my own monitor. But the rest of the VIP ROM code is Lee's work plus some extra comments I added as I was studying the VIP ROM.

            The Keyboard scanning routine is near the end of the ROM. The VIP goes into a Loop while the key is down to BEEP the speaker for that duration.

            :)J


            --- In cosmacelf@yahoogroups.com, "Tom" <elf-ii@...> wrote:
            >
            > Hi Scott,
            > You are correct, with the minor exception that EF3 goes low when a
            > depressed key is detected. This is in response to a hex 62 instruction
            > that initiates the 4-to-16 line decoding, which latches its output so
            > that the EF3 line can be tested. Since the CD4545 4-to-16 decoder is
            > used in the VIP, the output line is active LOW, providing the proper EF3
            > signal. The CD4514 would provide an active HIGH.
            > If you would like some insight to the ROM, Lee Hart has provided us with
            > a disassembled listing of the VIP Monitor ROM. You can access this at
            > Disassembled VIP Monitor ROM
            > <http://f1.grp.yahoofs.com/v1/YCHSUVAPfdwZEdk8wkasU-zXDGHQ5xqb51DQavXC8J\
            > bBJ-UDgbuKLHIrnGUUn02iy8G26EQ5JuTln4Hz2dQxiGgRyFc/VIP/VIPROM.PRN> in
            > the Files section of the group. This is a text file, so you can open it
            > with any text editor or viewer.
            >
            > - Tom
            > --- In cosmacelf@yahoogroups.com, "somaspack" wrote:
            > >
            > > Hi,
            > >
            > > The manual for the VIP doesn't go into the details of the ROM monitor.
            > I am curious how the keypad functions. It uses a 4515 4-line to 16-line
            > decoder, the inputs are D0-D3, the outputs are connected to the
            > individual hexadecimal switches, the common end of all switches are
            > wired to EF3.
            > >
            > > So I suspect that when run, the VIP polls each switch in a loop
            > (0-15), and addresses the 4515, places the relevant nibble on the data
            > bus to enable the key output, and if the key is found pressed - EF3 goes
            > high which would then trigger a branch operation to handle the key
            > press.
            > >
            > > Does this sound correct? Thanks.
            > >
            > > Scott
            > >
            >
          • somaspack
            Thanks to all who replied and for the links to additional resources! Scott
            Message 5 of 5 , Jul 2, 2013
            • 0 Attachment
              Thanks to all who replied and for the links to additional resources!

              Scott
            Your message has been successfully submitted and would be delivered to recipients shortly.