geekhack

geekhack Community => Keyboards => Topic started by: Kruppe on Tue, 02 June 2009, 21:11:06

Title: IBM model M 1390876 on a PC
Post by: Kruppe on Tue, 02 June 2009, 21:11:06
I've stumbled upon an IBM model M 1390876 through a friend of mine, it is a terminal keyboard (although I'm not totally clear on what that is yet) and I am wondering if there is any simple way of getting this working on a PC (preferably on linux).
Title: IBM model M 1390876 on a PC
Post by: Specter_57 on Tue, 02 June 2009, 23:23:37
Your keyboard is an IBM 3197 termional keyboard, 122 keys.

I think the only way you'll get it working on a PC is through the Keyboard Babel dongle.

See here:
http://www.kbdbabel.org/

Hope you're good at assembling circuit boards and know how to program a microcontroller, as that is what needs be done.

Maybe this helps.

Good luck.

Spec57
Title: IBM model M 1390876 on a PC
Post by: Kruppe on Wed, 03 June 2009, 22:01:20
As luck would have it I am an electrical engineer so I could definitely pull it off. I'm already working on a couple other mods at the moment so this will have to wait unfortunately.
Title: IBM model M 1390876 on a PC
Post by: nowsharing on Wed, 03 June 2009, 23:10:23
If you pull this off, please market your product on this forum. You'd make a lot of us happy.
Title: IBM model M 1390876 on a PC
Post by: Shawn Stanford on Thu, 04 June 2009, 07:34:38
Quote from: nowsharing;94130
If you pull this off, please market your product on this forum. You'd make a lot of us happy.

Word...
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Thu, 04 June 2009, 08:20:31
Oh, somebody who knows that COBOL is COBOL and not Cobol! I like this guy already!

+1 for you, buddy! Welcome to the forums Shawn.
Title: IBM model M 1390876 on a PC
Post by: itlnstln on Thu, 04 June 2009, 12:22:14
Quote from: ripster;94180
Technically Fortran isn't an acronym since it's short for "The IBM Mathematical Formula Translating System)".

OT (shocker): It's weird how a lot of common acronyms are turned into "normal words."  Cobol, Radar, Scuba, etc. should all be capitalized since they are truly acronyms.
 
 
Thanks, and carry on.
Title: IBM model M 1390876 on a PC
Post by: Shawn Stanford on Thu, 04 June 2009, 12:53:28
Quote from: ripster;94180
So long ago.... I can't even remember any of the COBOL vs FORTRAN programmer jokes.  Just everybody smoked a lot.  Explains why the IBM Model M has those deep keystem wells.  Keeps all the ash out.

I remember the days of smoking at my desk...

Here you go:

Real Programmers...

Title: IBM model M 1390876 on a PC
Post by: itlnstln on Thu, 04 June 2009, 14:31:41
Quote
[real programmers] have no use for managers. Managers are a necessary evil. They are for dealing with personnel bozos, bean counters, senior planners, and other mental defectives.

qft.
Title: IBM model M 1390876 on a PC
Post by: ch_123 on Thu, 04 June 2009, 16:57:50
Fortran was a good bit before my time, but I always liked "God is Real, unless declared Integer". Even before I knew the exact story* behind the joke, I found it funny.



*(For those who don't know it - In Fortran, variables were automatically typed according the first letter of the variable name, unless explicity defined otherwise. It would so happen that a variable whose name began with G would be a real number variable. Before I read the actual explanation I got the impression that Fortran variables were automatically typed as real unless defined otherwise. Wasn't technically correct, but the joke worked either way.)
Title: IBM model M 1390876 on a PC
Post by: wellington1869 on Thu, 04 June 2009, 19:58:29
Quote from: ch_123;94222
Fortran was a bit before my time, but I always liked "God is Real, unless declared Integer". Even before I knew the exact story* behind the joke, I found it funny.
[/i]


yea, thats up there with "whats nu? C over lambda".  
I always found that hilarious. ah, geekdom. ;)
Title: IBM model M 1390876 on a PC
Post by: o2dazone on Thu, 04 June 2009, 20:15:57
(http://img294.imageshack.us/img294/959/math.jpg)
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Fri, 05 June 2009, 08:49:08
Quote from: ripster;94180
Iron, you'll appreciate this - from wikipedia

Show Image
(http://upload.wikimedia.org/wikipedia/en/thumb/0/07/Fortran_acs_cover.jpeg/150px-Fortran_acs_cover.jpeg)


Technically Fortran isn't an acronym since it's short for "The IBM Mathematical Formula Translating System)".

Predates COBOL by a few years.


It's Formula Translator, FORTRAN! Don't believe everything you read on WikiPedia. I've looked at enough proprietary manuals by the people who came out with it (IBM)  to know they always called it FORTRAN.

FORTRAN came out around 57-58, COBOL a little later (I'm thinking 61 but maybe I'm wrong), and then PL/I in 63-64 time frame.
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Fri, 05 June 2009, 08:56:49
Quote from: Shawn Stanford;94193
I remember the days of smoking at my desk...

No kidding, we used to smoke cigars at our desks. And nobody had the nerve to say anything. Those were the days...


Quote from: Shawn Stanford;94193
  • Don't use APL unless the whole program can be written on one line.
Ok, but almost every APL program *can* be written in one line. (joke!)

Quote from: Shawn Stanford;94193
  • Don't use Pascal, BLISS, ADA, or any of those sissy-pinko computer science languages. Strong typing is a crutch for people with weak memories.
I'll tell you what, I wouldn't lump Ada in with Pascal (I don't know BLISS but damn it sure sounds familiar). And this is coming from a guy who hates Wirt(less) and Dykstra with a passion and I claim they have done more to destroy high performance computing and screwed up more computer science students than any two buttheads in the history of computing. Ada is one fantastic language. If you wanted to, you could replace every COBOL, FORTRAN, PL/I, C, and C++ program (and more if I had time to reflect on the subject) ever written and not miss anything. About the only thing I haven't seen Ada do is be as easy as COBOL is to generate reports with, just because of the way you can do PIC clauses in a print layout in WS. You can use PIC clauses in Ada (with the right annex support) but it still isn't as easy to bang out a few thousand line report. If you haven't looked at Ada since 83, have a look at it now. Superb!

Quote from: Shawn Stanford;94193
  • Don't drive clapped out Mavericks. They prefer BMW's, Lincolns, or pick-up trucks with floor shifts. Fast motorcycles are also highly regarded.
Damn, you got that one right!

Quote from: Shawn Stanford;94193
  • Know every nuance of every instruction and use them all in every real program. Puppy architects won't allow execute instructions to address another execute as the target instruction. Real programmers despise such petty restrictions
Yeppers
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Fri, 05 June 2009, 09:05:52
Quote from: ch_123;94222
Even before I knew the exact story* behind the joke, I found it funny.


*(For those who don't know it - In Fortran, variables were automatically typed according the first letter of the variable name, unless explicity defined otherwise. It would so happen that a variable whose name began with G would be a real number variable. Before I read the actual explanation I got the impression that Fortran variables were automatically typed as real unless defined otherwise. Wasn't technically correct, but the joke worked either way.)

Yeah if I can remember it went like this: undeclared variables beginning with I through N were INTEGER, others were REAL. I through N (INteger) get it?

Pretty good system. I wonder if it's still like that. I haven't written any FORTRAN since the snot-nosed kids started thinking they could do stuff like indent lines and use lower case and make it look like C or Pascal, the heathens!
Title: IBM model M 1390876 on a PC
Post by: IBI on Fri, 05 June 2009, 10:01:34
Quote from: Shawn Stanford;94193
Real Programmers...


I think that just applies to the older generation of real programmers.
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Fri, 05 June 2009, 10:16:08
That was the 2nd generation of coders. We punched cards. The guys who came before us used patch cords and toggle switches. We're still around and going strong though.

Times have changed a lot. Today decisions are made by CTOs and IT Directors neither of which usually have a clue, but they do have MBAs. I'm not knocking MBAs, but everybody should know his limitations. Having an MBA doesn't mean somebody is suited for making technical decisions. We used to run the company, for better or worse. And it was a hell of a lot more fun and productive in those days, because technical people made all the decisions. Now we spend most of our time in business meetings and marketing focus groups and it just ain't the same.
Title: IBM model M 1390876 on a PC
Post by: itlnstln on Fri, 05 June 2009, 11:35:28
I used to program on an abacus.
Title: IBM model M 1390876 on a PC
Post by: itlnstln on Fri, 05 June 2009, 12:01:19
Quote from: ripster;94389
Small hands, but quick.

That's what sh... nevermind.
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Sat, 06 June 2009, 13:37:09
Quote from: ripster;94386
How about oil cooled Turing Machines?

I never even saw one. But I'm guessing they were probably air cooled in those days. Who knows, maybe they heated the buildings with them like they did with the old UNIVACs!

Quote from: ripster;94386
We're so OT we're never going back so let me mention this great book on the first uses of computing.

Sorry, I thought I saw a post on here that said nothing was OT LOL. Damn, wrong forum again!
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Sat, 06 June 2009, 13:40:12
Quote from: itlnstln;94388
I used to program on an abacus.


You can joke all you want, but the programs we punched on cards in the 1970s will still assemble and RUN on the latest hardware. IBM did a great job of upwards compatability, even the object code from 35 years ago still executes cleanly. Try that with any other series of hardware/software and you'll understand why the few of us still left alive have such a warm fondness for this stuff that sounds like ancient history to people under 30.

Of course that's a one-way function, nothing written in recent memory will assemble or run on those old boxes. But damn they were fun and we ran real businesses on them like banks and insurance companies. You couldn't do that with an abacus in the 1970s unless you had a lot of friends with abacii ;)
Title: IBM model M 1390876 on a PC
Post by: keyb_gr on Sat, 06 June 2009, 13:58:32
Engineers are another species not so fond of being governed by beancounters - and they may be no less geeky than IT folks. Just look at the story behind the Write-Only Memory datasheet (http://www.national.com/rap/Story/WOMorigin.html) (with a PDF copy of the thing for amusement), a classic.
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Sat, 06 June 2009, 14:41:07
Wow Ripster that is WAY cool! It reminds me of a check sorting machine. They probably used the same chassis.
Title: IBM model M 1390876 on a PC
Post by: ironcoder on Sat, 06 June 2009, 14:43:01
keyb I don't think anybody likes beancounters, not even their mothers. They're one step below used-car salesmen (no offense in case there are any online!) and head hunters.
Title: IBM model M 1390876 on a PC
Post by: JohnElliott on Mon, 13 July 2009, 20:15:24
Quote from: Specter_57;94019
Your keyboard is an IBM 3197 termional keyboard, 122 keys.

I think the only way you'll get it working on a PC is through the Keyboard Babel dongle.


FYI, the 1390876 will work just fine on a PC -- if you're content to put up with it behaving like an 84-key Model F, or you can get at your operating system's keyboard mapping tables. I managed to create a keymap for text-mode Linux, for example, allowing the use of all 122 keys. It can be found at my page on the 1390876 (http://www.seasip.info/VintagePC/ibm_1390876.html).
Title: IBM model M 1390876 on a PC
Post by: ch_123 on Mon, 13 July 2009, 20:20:51
Interesting... I was interested in trying to convert a 122-key Model F to be PC compatible. Is there anyway at all of getting Linux to recognize the arrow keys on the keyboard to be recognized?
Title: IBM model M 1390876 on a PC
Post by: JohnElliott on Tue, 14 July 2009, 01:59:38
Quote from: ch_123;102471
Interesting... I was interested in trying to convert a 122-key Model F to be PC compatible. Is there anyway at all of getting Linux to recognize the arrow keys on the keyboard to be recognized?


First, use
Code: [Select]
showkey -s to see what scancodes the arrow keys produce, and
Code: [Select]
showkey to see if Linux has mapped them to internal keycodes. If a key reports a scancode but no keycode, you need to use the setkeycodes utility to add them. On my keyboard, for example, I had to do this for the cursor up and right keys:
Code: [Select]
setkeycodes 0x78 103 0x7D 106
Then you use loadkeys to set which keys produce which characters. Create a file containing something like
Code: [Select]

keycode 103 = Up
keycode 86 = Left
keycode 106 = Right
keycode 85 = Down

and load it with loadkeys.

If you're using X-Window, you'll have to do something similar with xmodmap.
Title: IBM model M 1390876 on a PC
Post by: ch_123 on Tue, 14 July 2009, 14:40:35
This is quite interesting. When I disassembled my AT Model F, there were unused contacts that corresponded to scan-codes 70-75 (from your diagram on your page that you linked). When I tried to make them work, they didn't respond, despite the fact that the looked perfectly functional. I thought that maybe they were disabled at the controller level, but now I suspect they might just correspond to the same scan-codes as your terminal keyboard and thus my computer didn't respond to them as they were not mapped. If they could be manipulated, it would be possible to make the layout of the main block of the Model F the same as that of the Model M (ie. normal sized space bar
  • You could put a space bar from a Model M in, but there would be problems as there's nowhere to put the stabilizer bar. Also, because you'd be adding additional keys, you'd need a spare Model F to take spare buckling spring assemblies from.[/i]
Title: IBM model M 1390876 on a PC
Post by: keyb_gr on Tue, 14 July 2009, 16:12:42
Quote from: JohnElliott;102469
It can be found at my page on the 1390876 (http://www.seasip.info/VintagePC/ibm_1390876.html).
Nice page. The SVG images are a little fussy though, Seamonkey 1.1.17 insists on applying my minimum font size to the lettering in the key layout (which does not look pretty); as a workaround, I'd try exporting the text as curves. FF 3.5 does not do that but page scrolling is a little sluggish in both browsers (which is more easily noticed on my machine which hardly sets any records for computing speed these days).

SVG sure is more elegant than my solution (ASCII graphics (http://stephan.win31.de/superhet.htm) - don't laugh), but it does come at a price...
Title: IBM model M 1390876 on a PC
Post by: Rajagra on Tue, 14 July 2009, 17:07:13
Quote from: JohnElliott;102469
my page on the 1390876 (http://www.seasip.info/VintagePC/ibm_1390876.html).

Useful.

Re the scancode sets theory, there's some alternative ideas here (http://www.quadibloc.com/comp/scan.htm). I haven't read through the links but there might be some good info there.

One thing it explains is that the #~ key on UK keyboards is not simply the \| key moved to a different position.
Title: IBM model M 1390876 on a PC
Post by: JohnElliott on Wed, 22 July 2009, 15:43:07
Quote from: ch_123;102559
This is quite interesting. When I disassembled my AT Model F, there were unused contacts that corresponded to scan-codes 70-75 (from your diagram on your page that you linked). When I tried to make them work, they didn't respond, despite the fact that the looked perfectly functional.


I finally got round to trying this on a real 84-key Model F. Yes, all the unused contacts are functional and produce the same scancodes as on my diagram. I'm not sure why it didn't work for you but perhaps whatever you were trying to bridge the contacts with didn't trigger enough of a change in capacitance? I had the PCB out and was using my fingers.

Now all I have to do is find out where all the bits of the keyboard have got to and reassemble it...
Title: IBM model M 1390876 on a PC
Post by: ch_123 on Wed, 22 July 2009, 16:33:27
Actually, what I meant was that they didn't produce the characters I intended them to. But if they do actually send scan codes to the PC that could be mapped, that would mean that the Model F's layout could be tweaked to something more normal. Thanks for the heads up!