Jump to content
IGNORED

TransKey-II in development


mytek

Recommended Posts

We Have a Krh-II which was designed to be installed from the underside of the mother board so anyone who was using the pokey stereo mod could use ours. Michael was kind enough to send me both of his and I am very impressed with what I have seen so far. the XE-Game System is super cool. At the moment I am using my KRH and KRH-II with a wireless keyboard and have it working. it is very cool to have a wireless keyboard driving my Atari Tower. I also suppect that Michales will also work with the wireless keyboard I have here. I just have not put that test together yet. for the first time ever there are three different keyboard interfaces for different hardware requirments. Most Cool. You can look on my web site for some info on the wireless keyboard I am using. Also out KRH-II will be selling for $25.00 plus shipping.

http://realdos.net

 

Take care all and enjoy.

 

Yes Steve Cardin has a new version of his AKI clone called the KRH-II that looks to be well suited for situations where the TK-II just isn't going to fit, and where all you are looking for is a keyboard interface. It is an inexpensive fully assembled ready-to-go solution so no DIY required.

 

- Michael

Edited by mytekcontrols
Link to comment
Share on other sites

I have begun the creation of the installation page on my website. So far I only have details on enabling the Console Keys work from a TK-II-XEGS version (PS/2 Keys F5-F8), but there will be more to come as time provides. Some of these photos have already appeared on this thread, but I have added a few tweaks to convey a little more information.

 

LINK

 

- Michael

  • Like 1
Link to comment
Share on other sites

The Mouse

 

I haven't had time to fully cover the mouse, but in a nut shell here's how it works...

 

The middle button enables or disables the mouse, and when first powering up the computer with a TransKey-II on board, the mouse is initially disabled. If both the left and right mouse buttons are pressed and held while also pressing the middle button, you'll step through 1 of 4 mouse resolution settings with 1 being the slowest and 4 being the fastest (the numbers will appear on screen). This resolution setting is stored in EEPROM. Just pressing either the left or the right mouse button independently will send out one of two different normally unused key codes on the Atari (as seen when Peeking location 764).

 

That's pretty much it.

 

- Michael

 

P.S. My first boards from OSH Park will be arriving by the end of this week. If they look good I'll enable the sharing aspect on the site, so it should be a one click buy.

  • Like 1
Link to comment
Share on other sites

That should allow a mouse click to become the "any" key. Quite a lot of software has a key-wait loop such as:

 

?"Press any key to continue"

poke 764,255

wait: while peek(764)=255 then wait

rem continue with program.

 

very nice :)

 

Yeah I was kinda debating with myself whether I should have assigned the 'Return' key send to the Left Mouse Button, and then thinking about the reality of this being a NEW unique mouse implementation without any supporting software to date that would specifically recognize it, I opted for unique key assignments for both buttons.

 

Here's a little blurb I wrote on my website that adds more detail about this and also the mouse movement and scroll wheel key sends...

 

http://ataribits.weebly.com/communication-protocol.html

 

The Mouse: The received data packet is then translated into Ctrl-Arrow key cursor movement via the normal POKEY scanning inputs as previously described in 'Talking to POKEY'. So to move the cursor diagonally across the screen, a series of X and Y equivalent arrow key codes are sent to step it in the general direction of mouse movement. The left and right mouse buttons have been assigned normally unused scan key codes on the matrix. So when doing a PEEK (764) you will see the following codes: Left Button = 41, Right Button = 25. The Middle Button is used to toggle the mouse enable state, for those times you don't want to worry about bumping the mouse in the middle of typing and causing the cursor to go elsewhere. And for doing single step up or down movement, the scroll wheel is converted into 1200XL F1 and F2 key codes, which act the same as Arrow 'UP' or Arrow 'DOWN' but give you a way to intercept them as unique codes for other purposes (these function keys are built-in to the XL/XE OS starting with the 1200XL and ending with the 130XE).

 

 

So the general thinking is to have the software look for these key sends to do something 'mouse' specific, although your 'any key' example would certainly work as well.

 

I added the mouse capability to the TK-II mainly to differentiate it from other existing keyboard interface boards, and at the request of Bob Woolley. But I also wanted TK's keyboard implementation to stand out on its own, and bring a lot of extra and useful features. To that end, I think I have succeeded. It'll be interesting to see just how useful this new mouse implementation really is, and how many people actually use it.

 

- Michael

Edited by mytekcontrols
  • Like 2
Link to comment
Share on other sites

Video of TK-II Insert Mode in action (this is an older video using a CRT before I got my LCD display, hence the interference lines).

 

https://www.youtube.com/watch?v=GqAAiNbkjh4

 

At first this may not seem all that impressive, but keep in mind that this is being done in the Basic editing screen, not in a word processing programming. So the idea is that when TK-II is toggled into this mode (ALT+I), spaces are automatically inserted when typing (no character rub-out), and trailing spaces are automatically deleted when using the back space key. Exactly the same as most word processors would do, but now available in non-word processor applications.

 

Enjoy :)

 

- Michael

Link to comment
Share on other sites

For people that plan on building some of these themselves, I put a BOM on the Design Page that gives sources for all the parts except for the PIC16F1847-I/P. Since this part ranges widely in price, and sometimes gets cheaper one place vs the other I decided that it might be better to have people check at OctoPart to get the best pricing for this chip LINK. Presently it can be gotten for as little as $1.46 a pop (not including shipping).

medium-PIC16F1847-PDIP-18.png

- Michael

  • Like 2
Link to comment
Share on other sites

Hi Michael,

Good deal on the ICSP, I'll leave the design as is.

 

Cool! Also good to hear your boards are in the soup :) (Also got my notice from OSHP today for a diff project)

 

So I got the board layout 99% done, and several rounds of tweaking things, so I'll drop some previews here. Still not sure of the mounting holes if any; thinking of locating the board above the SIO connector. Will print out a 1:1 and play around with the placement inside the case.

All the chip caps and resistors are 1206 packages and I opted for SMD electrolytics rather then tants (huge cost saving). All in all, the hardest to solder is the FTDI chip, but it is doable. I'll share the Mouser BOM (except the SIP Headers) also; if anyone does build a board, I would advise them to add a few extra chip caps and resistors to their order, they're dirt cheap and if you drop one during assembly, you could be SOL :(

attachicon.gifTransKey Slim v1.1.SMD Dim.pdf

attachicon.gifTransKey Slim v1.1.SMD Sch.pdf

attachicon.gifTK SMD v 1.1 Mouser Proj.pdf

attachicon.gifTransKey Slim v1.1.SMD Brd.pdf

Yogi

 

Hi Yogi,

 

Just checking in to see how your TK+SIO2PC-USB board layout is coming (or should I say is it ready for a board run?). I think this will be a very attractive alternative.

 

- Michael

Edited by mytekcontrols
Link to comment
Share on other sites

 

Hi Yogi,

 

Just checking in to see how your TK+SIO2PC-USB board layout is coming (or should I say is it ready for a board run?). I think this will be a very attractive alternative.

 

- Michael

Hi Michael, sorry I've been kind of silent. Been following your posts, very impressed with the editing features of TK][. :) Too cool.

So I have two versions now, the original one that centers the sockets and a version that has the sockets shifted to left corner. This arose when I was checking the mounting, one of my 800XL has a U1M. I installed that back by the OS and Basic Roms; when trying out the fit of the first TK][ slim design there was a conflict between the boards.

The plan is to mount the sockets above the SIO connector, with this second design the board shifts to the right of the SIO. This newer version really only accommodates my user case, because of how I mounted the U1M. If it had been 5 mm to the left, there wouldn't have been a issue.

A run is in fab ATM, but there is one issue I realised after ordering. Over the SIO socket the USB B connector fits but the PS2 socket is about 3 mm taller so it may encroach on the case lip too much, where bottom and top meets.

Either board can fit to the right side of the case behind the joystick sockets, at least on 800XLs, This would have the USB and KB cables on the side kind of like the XMEGS. So this may be a better option overall.

Here is the second design preview

TransKey Slim+ v1.2.SMD.pdf

Yogi

  • Like 1
Link to comment
Share on other sites

Hi Michael, sorry I've been kind of silent. Been following your posts, very impressed with the editing features of TK][. :) Too cool.

So I have two versions now, the original one that centers the sockets and a version that has the sockets shifted to left corner. This arose when I was checking the mounting, one of my 800XL has a U1M. I installed that back by the OS and Basic Roms; when trying out the fit of the first TK][ slim design there was a conflict between the boards.

The plan is to mount the sockets above the SIO connector, with this second design the board shifts to the right of the SIO. This newer version really only accommodates my user case, because of how I mounted the U1M. If it had been 5 mm to the left, there wouldn't have been a issue.

A run is in fab ATM, but there is one issue I realised after ordering. Over the SIO socket the USB B connector fits but the PS2 socket is about 3 mm taller so it may encroach on the case lip too much, where bottom and top meets.

Either board can fit to the right side of the case behind the joystick sockets, at least on 800XLs, This would have the USB and KB cables on the side kind of like the XMEGS. So this may be a better option overall.

Here is the second design preview

attachicon.gifTransKey Slim+ v1.2.SMD.pdf

Yogi

 

Yeah it can be a problem making everything work together and fit. Back when I did the original TransKey in 1990 there really wasn't much in the way of internal upgrades except for RAM expansion, so life was a bit easier in those early times (not the case anymore).

 

BTW; I really like your board layouts, they look very pro :thumbsup:

 

Just one question, what is a U1M?

 

- Michael

Edited by mytekcontrols
Link to comment
Share on other sites

U1M = Ultimate 1 Meg upgrade - IMB, built-in SDX plus I'm sure a few other goodies I've forgotten.

 

See, for example, http://lotharek.pl/product.php?pid=67

 

Thanks for the translation David :) I do know what that is, but just didn't recognize the abbreviated form. Still playing a bit of catch up on some of this.

 

- Michael

Link to comment
Share on other sites

OSH Park first run boards arrived :D

 

TK-II_OSH_Park_1st_Run.JPG

 

Everything looks to be good, but of course I will still want to do a complete assembly of each and test them out. From what I see, they appear to be perfect and all the components fit :cool:

 

To make it easier for all you DIY folks, I made both of these projects as 'shared' on the OSH Park site, and added ORDER BUTTONS on my website which will take you to OSH Park's order page for that particular board.

 

- Michael

 

EDIT: Please note that the D-Sub 15 connector as shown is unmodified. In order to fit into the limited space provided on the XEGS computer, it will require that the 'ears' are removed from the connector, preferably before inserting into the PCB. Also to make-up for the lack of connector solder-in supports, the connector body should be glued to the PCB with something like J-B Weld 2-part Epoxy prior to soldering in place.

Edited by mytekcontrols
  • Like 2
Link to comment
Share on other sites

Looks nice, always fun to get the padded envelope :) I think I've got about another week to wait judging from my last run.

Yogi

 

Thanks for kudos Yogi. Yep nothing like the smell of freshly made boards ;-)

 

IMPORTANT FIRMWARE UPDATE

 

The old fix one thing and then have two new problems pop up syndrome has bitten me :mad:

 

So if you recall in Version 1.1, I fixed a status message reversal problem with whether the Screen Saver was enabled or disabled. So not happy to leave well enough alone at the time, I also created a new subroutine that took the place of what was once a bunch of independent code blocks that pertained to the non-volatile parameters such as Option-on-Boot, Screen Saver, XEGS Mode, and the Mouse Resolution. This new routine would read the state of the parameter in the EEPROM, fix it if it was out of range (pertains to new PIC chip), pass the result back to the main line calling code, and if requested display a status message. Anyway as happens when cutting and pasting, I messed up in two calls, and had the return variables swapped (Screen Saver and XEGS Mode). So the end result is that when I would call to get the Screen Saver byte, I was transferring the EEPROM value into the XEGS variable, and of course the same thing happened when I did things the other way around. Talk about confusing data.

 

So anyway there is now a new Download Link: TK-II-OS version 1.2 that hopefully fixes all of this without yet creating another problem.

 

I discovered this after having visited Bob Woolley and demoing the TK-II in one of his 1200XL's. It struck me as odd that his internal keyboard was still working when TK-II was set to XEGS Mode=ON, which it shouldn't have. We both dismissed it at the time. Well today I decided to double check this on my 1200XL which still had the Version 1.0 code. Sure enough when XEGS Mode was active the internal keyboard didn't work. So I updated to version 1.1 and then I saw the problem rear its ugly head, and due to the nature of the problem at first it was very confusing to what was really happening.

 

To keep up with the changes, I have started a version history log in the form of a text file that can be downloaded on the Design Page (its right above the TK-II-OS download link on that page).

 

- Michael

Edited by mytekcontrols
Link to comment
Share on other sites

Just ordered my boards. Now all I'll need is parts... and the time to do things. Looking at my calendar, I'm hoping to have things done in time for the 50th anniversary of the 8-bits... :(

 

You almost had me on that 50th anniversary. I thought to myself, has it been almost 50 years since the creation of the Atari 8-bit series? And then my brain kicked in :roll:

 

Hopefully it wont take you that long.

 

- Michael

Link to comment
Share on other sites

Wa Hoo!!

TK][ Slim+ v1.2 1.85x2.12 inch (46.86x53.80 mm) 2 layer board.

Your boards have been shipped.

 

f04295e0315ccdbc8c89c825ffb33679.png b2dec5e30acfbe83715187c6cb85bb13.png

 

3 boards at $19.50 per batch of three. $19.50

Sub total $19.50

USPS - Free Shipping $0.00

TOTAL (paid) $19.50

:)

Yogi

Edited by Van
  • Like 2
Link to comment
Share on other sites

 

You almost had me on that 50th anniversary. I thought to myself, has it been almost 50 years since the creation of the Atari 8-bit series? And then my brain kicked in :roll:

 

Hopefully it wont take you that long.

 

- Michael

 

The way this week is going, looks like I was overly optimistic...

 

Link to comment
Share on other sites

Wa Hoo!!

TK][ Slim+ v1.2 1.85x2.12 inch (46.86x53.80 mm) 2 layer board.

Your boards have been shipped.

 

f04295e0315ccdbc8c89c825ffb33679.png b2dec5e30acfbe83715187c6cb85bb13.png

 

3 boards at $19.50 per batch of three. $19.50

Sub total $19.50

USPS - Free Shipping $0.00

TOTAL (paid) $19.50

:)

Yogi

 

Looking Good Yogi !

 

Pretty soon a whole new Atari upgrade will be born, a hybrid of TK-II and SIO2PC-USB.

 

 

 

The way this week is going, looks like I was overly optimistic...

 

Sorry to hear that David, I hope things improve for you soon.

 

 

- Michael

Edited by mytekcontrols
Link to comment
Share on other sites

A couple of weeks ago I set Bob Woolley up with a couple of TK-II boards, and one of them immediately went into one of his many 1200XL's (and boy do I mean many). Either this one or another (not sure, since I left him with 3 piggyback versions) took a trip to this month's SLCC meeting. Here's what Bob had to say about that...

 

"I took the TK II to our computer club meeting - made a great demo. Can we talk about some of the mouse processes when I get back from vacation on Friday? The keyboard is solid!"

 

So it looks like a big thumbs up for the keyboard emulation, but perhaps some changes to come for the mouse aspect. Don't know what Bob has in mind yet, but for what its worth, I feel the mouse emulation could be better. Of course for me it was way more important to get the keyboard right this go around, and the mouse kinda got tossed into the works as an afterthought. Although it consumed a good month of my time trying to make it work. Bottom line is that a number of things fight you, such as how fast keys can be passed through POKEY. In earlier attempts at doing mouse movement acceleration, I was running things through a ring buffer, but found that this led to overruns when stopping the mouse movement. In other words I had stopped, but the buffer continued sending out cursor movement keys until the buffer emptied out. The problem is that my code didn't know that it had outpaced the POKEY, and was just merrily spitting out keys. Perhaps with better code, this can be solved. Funny thing was on my XEGS for reasons that escape me, I could do reliable key sends at well over 40+ characters per second, whereas on my 1200Xl I had to slow this down to around 24-25 characters per second, otherwise I dropped keys. Well at 40+ characters per second, the mouse overruns were no longer a problem, and POKEY kept up pretty good. However since TK needs to work on all systems, I had to default to the slower send speed.

 

But please don't judge TK by how well the mouse works. As I said this was thrown in because from a physical resource stand point, it cost nothing to do so. The main focus of TK has and always will be as a PS/2 keyboard bridge for the Atari 8. In this aspect I think you guys will be quite pleased.

 

In time the mouse emulation will probably see some small improvements, and I am certainly open to others jumping into the code to try their hand at this. For this reason the source will always be provided as part of the firmware download. I know its in a new fangled language called FlowCode, but believe me when I say this has got to be one of the easiest ways to program a PIC chip I have ever tried, and I tried many other languages over the years.

 

- Michael

Edited by mytekcontrols
  • Like 1
Link to comment
Share on other sites

TK-II-PIGGYBACK 1200XL installation photos have just been added to my website (LINK). It also shows details on where to connect TK-II to the Console and Reset switches.

 

Hopefully I will get some information posted pertaining to a 600/800XL in a bit (assuming I get one of those computers in my hands), but I also welcome photos contributed by anyone else in the meantime.

 

Although these photos show Console and Reset switch details for an AKI, the resolution is unfortunately not all that good, and the colors are specific to what was wired at the time that product was shipped.

AKI%20Ke17.jpgAKI%20Ke18.jpg

LINK to Source Page

 

 

- Michael

Edited by mytekcontrols
Link to comment
Share on other sites

Here's the cheapest place I've found to buy the Startech PS/2 panel mount connector with pigtail and PC bracket BUY LINK. Only $3.68 each.

 

694238.jpg

A reminder: this will not work as factory wired on the TK-II-PIGGYBACK connection. In order to get double duty out of the plug side (mouse & keyboard), and to be sure no harm would be done if it got accidentally plugged in flipped by 180, rewiring is required. This consists of very carefully lifting the plastic retaining tabs that hold in the terminal on the terminal housing and sliding the terminal out. I stressed the carefully part, since it is very easy to break off the plastic retaining tabs if you are not careful. So only lift it enough to do the trick, and nothing more. Of course you have two chances to get this right, since each Startech connector comes with a terminal housing.

 

Here is the DOC that shows you how to rewire this connector.

 

BTW; if you are only planning on using just the keyboard, or just the mouse in a solo fashion, then only one Startech connector is required.

 

- Michael

 

 

EDIT: Do not pay any attention to the arrow indication on the Startech plug. It will not line up with the #1 pin as marked on the TK-II 'J1' silkscreen.

Edited by mytekcontrols
  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...