1-pin PS2 Keyboard & 1-pin TV 40x25 - Released on OBEX

Cluso99Cluso99 Posts: 13,042
This thread will now contain information about both the 1-pin Keyboard and 1-pin TV objects.



Release code: 21st Feb 2010
  • OnePinKbdTV_demo·· v040
  • OnePinKeyboard······· v125
  • OnePinTVText·········· v040
  • isx_in
  • isx_out
  • 1-pinTV_calcs·· ······· v001
I have noted that one of my PS2 keyboards does not work. More testing to be done to find out why.
Please report any bugs here.



OnePinKeyboard
  • Features
    • Works with a PS2 keyboard using only 1 propeller pin (kbddata)
    • A 16 character buffer is inside the cog
    • Keycode conversion takes place inside the cog
    • Optional keycode conversion for Up/Down/Left/Right/Home/Backspace/ClearScreen(ScrollLock) to ascii video codes
    • Simple 1 long hub interface (mailbox/rendezvous)
    • Minimal hub footprint
    • Designed for SphinxOS, RamBlade, etc where alternate drivers can be loaded or changed on the fly without software changes
  • Interface
    • The standard prop keyboard interface can be used (as on the Proto Board, etc)
    • Simple circuit uses 2 x 10K and 1 x 100R resistors
      • 1 x 100R in series from the propeller pin to the keyboard data pin, with a 1 x 10K pullup to +5V at the keyboard data pin
      • 1 x 10K pullup to +5V at the keyboard clock pin
    • A simple external cable can be built with·resistors in the plug (see circuit and pictures below)
    • The keyboard is not initialised, so the keyboard LEDs do not light up
    • Requires the user to type a <space> to synhronise the keyboard
    • Some USB keyboards support PS2 mode by a passive converter
    • A USB socket can be forced into a minidin6 pcb - I need to check if the data pin needs to be rewired on this ???
  • Operation
    • Requires the user to type a <space> to synchronise the keyboard
    • The keyboard is not initialised by the propeller, so the keyboard LEDs do not work
  • Acknowledgements
    • Scancode decoding based on original Keyboard.spin·by Parallax
    • Thanks to Andy (Ariba) for some initial tests and ideas
    • Thanks to kuroneko for helping me to·understand some features of the counters

OnePinTVText
  • Features
    • Works with a TV (composite video) using only 1 propeller pin
    • B&W display only, NTSC default (PAL requires parameter changes)
    • 25·lines of 40 characters (40x25)
    • 8 x 8 font inside the cog
    • Simple terminal code inside the cog (ASCII control codes, not VT100 compatible)
      • Up/Down/Left/Right/Home/Backspace
      • Enter (Carriage Return) causes scrolling if·on bottom line of screen
      • Clear Screen is implemented by the ScrollLock key ($00 and $18)
    • Blinking underline cursor
    • Inverse video for bit8=1
    • Simple 1 long hub interface (mailbox/rendezvous)
    • Screen buffer (1000 bytes) in hub (allows other programs to directly manipulate the screen buffer if required)
    • Minimal hub footprint
    • Designed for SphinxOS, RamBlade, etc where alternate drivers can be loaded or changed on the fly without software changes
    • Also usable for a simple (extra) debug display
  • Interface
    • The standard prop·TV (composite video)·interface can be used (as on the Proto Board, etc)
    • Simple circuit uses 1 x 270R·resistor (other values can be easily used)
      • 1 x 270R in series from the propeller pin to the video pin
    • A simple external cable can be built with·the resistor in the plug (see circuit and pictures below)
  • Acknowledgements
    • Based on original OnePinTVText·by Eric Ball
    • Uses AiChip 8x8 fonts
    • Thanks to Phil Pilgrim (PhiPi) for the original hardware concept
The archive contains all programs required for testing including the program to calculation·the TV parameters.

For testing, just connect to your existing propeller with PS2 Keyboard and TV and run the program. The existing circuits will work correctly although the other pins will be ignored. Pin changes in the demo code may be required.

attachment.php?attachmentid=67984

Instructions for building the cables and circuits are on the RamBlade thread· http://forums.parallax.com/showthread.php?p=849265

attachment.php?attachmentid=67390

31Mar2010: I have just posted v050 of the Debug version of the 1pin TV & 1pin KBD demo code. Please be warned... I used a twisted pair to bring the TV & KBD pins from my RamBlade to a breakout board and the interference caused the keyboard code not to work. It was bad practice and I paid the price in lost time to debug!!

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:

· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)·
· Prop OS: SphinxOS·, PropDos , PropCmd··· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBlade Props: www.cluso.bluemagic.biz

Post Edited (Cluso99) : 3/31/2010 6:11:32 AM GMT
My Prop boards: P8XBlade2, RamBlade, CpuBlade, TriBlade
Prop OS (also see Sphinx, PropDos, PropCmd, Spinix)
Website: www.clusos.com
Prop Tools (Index) , Emulators (Index) , ZiCog (Z80)
«1

Comments

Sign In or Register to comment.