Friday, December 25, 2009

Exotic Feline Breeding Compound, Rosamond, California

The EFBC has been a favorite destination as well as a favorite charity of ours for many years. We love cats, and love the way this place is run. It's privately funded and run by a great bunch of people who treat their animals excellently. Likewise, they're committed to a most laudable cause, saving large cat species from extinction by building strong breeding stock in captivity.

Shapur, a rare Persian Leopard
One of the EFBC's wonderful cats. Shapur, a very rare Persian Leopard.
Many of the cats there are on display, so you can enjoy them and learn more about them. Volunteer opportunities are plentiful, I wish I lived close enough or could visit more regularly. I don't mind cleaning out cat boxes of any size. ;)

Several times a year the Exotic Feline Breeding Compound holds evening tours where more of the center is opened to the (over 18) visitors. They're called Twilight Tours. Once a year a fundraiser called The Feline Follies is held, where guests can not only enjoy a wonderful dinner, buy art, and purchase items at auction, but they also get to enjoy the company of select "outreach" members of the cat community as well as other animals brought in for the event. There's nothing like getting to sit with a big cat, or have an "outreach trainee" cub cling to your arm.

Anny, a Snow Leopard
One half of the EFBC's breeding pair of Snow Leopards, Anny
If you can possibly visit, do so. Even if you can't, check them out on the web, enjoy the great cat pictures (no bars on theirs, I have to stand outside the enclosure so I've got bars in mine.) You can help them care for the cats by shopping online through their website, buying items from their gift shop, or using their Amazon link when you shop.

http://www.wildcatzoo.org/

Friday, December 18, 2009

Nokia Ovi: Epic Fail

I decided to download some new apps to my sorta-new Nokia E63 today. My normal approach for putting apps on my phones is to go out looking for open source apps on the web using one of my regular computers, then transfer it onto the phone via memory card or Bluetooth. Today, I made the mistake of deciding to try out Nokia's Ovi software service instead.

First I went out via Wifi on the phone itself. Initially, I had the "Download!" item on the phone as it came from the factory. Upon contacting Nokia I got a message telling me I needed to upgrade to the new Ovi software.

OK. I upgraded. Then I tried connecting to Ovi. I got a message telling me Ovi wasn't available. Wonderful. At that point I had no idea whether that meant I'd just happened to hit some time when site maintenance was going on, or if my new software was no good.

Later I was able to connect (two days later. I should have mentioned I didn't just start this process today...)

You can go along, looking at possible downloads at Ovi, but you can't download without an account. The advice I got was to create an account on my PC, then sync with the phone so that it could use that account to connect to Ovi. *sigh*

I went to the only PC I have that runs a current version of Windows as required by Nokia's sync software. I logged into Ovi and created my account. I downloaded the software (after fighting my way through Nokia's awful website--I'm sure the Flash crud works fine on Nokia's LAN, but on my broadband it takes forever and you can't even tell what it's doing then once it's downloaded you get an error more than half the time. And don't even try to connect to Nokia's website from one of their phones!)

I got the software downloaded while I left the house for errands, came back, installed it, and discovered that I had no data cable and that none of my present USB cables was the right one for this phone. My cheap, half-the-price Chinese phones came with data cables, Nokia! What's the matter, can't turn a profit without trying to milk your customers for an overpriced data cable? Not only that, my Windows system is the only one in the house without Bluetooth. I didn't feel like burning more time on a wasted effort by trying to find a driver for the dongle I've got, so after the website, download, and install I just gave up. I'll recover the hard disk space another day.

I went back to Ovi on the phone, and found that I could just log in directly. Then I selected that I wanted to see only free apps. Then I changed catagories. And it started showing me for-pay apps. When you change categories you then have to go back and choose to see just free apps again. And even if you do, if they've got a "featured" app that's for pay, it stays there at the top of your list.

Four pages of apps in, the stuff I was finding for free was garbage. Adware and crippleware, mostly. About what I expected, I'm afraid, and why I usually just go looking for free open source software right off the bat. I was hoping to find a few decent simple time-killer games, though. They may be there, but I can't find them among the cruft.

What a waste of time and effort.

Do yourself a favor, if you do end up with one of Nokia's phones, learn to install apps without going through Ovi if you don't already know how. It'll be time far better spent than doing what I did, and you'll still know how to do it when you get a different phone. Like a cool, inexpensive little Sciphone, maybe.

My Articles on cell phones:

Monday, December 14, 2009

Face Off: Nokia E63 vs. SciPhone G2

I picked up a Nokia E63 cheap some time ago as a possible replacement for my Sciphone G2. I like the keyboard on the E63, and that coupled with a discounted unit price at a local brick-and-mortar induced me to buy.

The phone my G2 replaced was an older Nokia, a Nokia 3650. This was a great phone, I still had such an old phone on my hip for such a long time because I couldn't find a newer phone that gave me all the features it had, plus some tech upgrades, at a price I was willing to pay. For the longest time the best I could find was phones costing over $700. Everything selling for less would have meant giving up something I already had on the 3650.

As a result, I had a good impression of Nokia. I know all their phones aren't winners (otherwise replacing the 3650 would have been a no-brainer, right?) But still, I liked Symbian far, far better than WinMobile or any of the other OSes I saw on other phones. Giving up Symbian when getting the G2 was one of my biggest concerns.

Overall, though, the G2 turned out to be a great phone. I gave up my old 3650 to one of my kids shortly after moving to the G2. I took a leisurely pace when "moving in" to the G2, and after about 3 weeks I had everything configured as I like it, and was using all the features I'd bought the phone for without any problems.

The phone ended up having a problem after that, and the fine support at scophone.com, from whom I'd bought the phone, had me return it for a replacement. When the replacement arrived, I was able to "move in" to the new phone easily enough (my only problems turned out to be with my service provider, T-Mobile, who turned off my internet service without my authorization then refused to reinstate it at my previous rate, only offering me the new rate of over double my grandfathered rate from before.)

Then last October I bought the E63.

Well.

I looked at the calendar and discovered that just three days short of two months in using this phone, I still don't feel comfortable with it. When I tried (and tried, and tried, but that's a long story) to do a firmware update, at one point it warned me it'd be clearing everything in the phone. Didn't bother me at all, I haven't personalized it at all past setting up the Wifi and pairing it with my workstation via Bluetooth. I don't stand to lose any data. It's not like it's my phone...

I'm starting to get used to some of the menus I use regularly. It's still not natural. Not even calling my wife.

The controls and menu layout stink. You're never sure what you should do, you're never sure exactly what you're going to get. Constant surprises keep you feeling this way.

This phone's keyboard is great. Otherwise, I call it a dog. I gave up my old phone about a week after I gave up my G2. I still have my G2, and I take a "vacation" from my E63 every so often by sticking my SIM back in it. My teenager is upset that she doesn't have my G2--she was really looking forward to it. With the Java apps on it, it pretty well kicks the butt of even the vaunted "Jesus Phone".

So, in spite of the G2's quirks, I still like it more than my twice-the-price first-line manufacturer Nokia E63:

Nokia E63 versus Sciphone G2

Keyboard:
E63: Very nice physical keyboard.
G2:Soft keyboard, with the annoying trait of having to flip through multiple international keyboards when entering data that requires shifts between upper and lower case, etc.
Win: E63

Blacklist:

E63: Either has none or it can't be found by mere mortals.
G2: Easily found and configured.
Win: G2

Java:
E63: Clearly documents which JSPs it supports, supports a wide variety of them.
G2: Less clear what it supports, but runs touchscreen capable Java apps well.
Win:E63 by a nose. Functionally the G2 is as good, but better docs of what standards it supports would be very nice.

General Phone Use:
E63: Awkward interface, usable but non-intuitive. Lousy menu structure, unclear about keyboard mode.
G2: Easy, intuitive.
Win:G2, hands down.

Signal Strength:
E63: Excellent in marginal areas (where I live and work is the definition of a marginal area.)
G2: Very good.
Win: E63, but not by much--the G2 outperforms every other phone I've tried but the Nokia E63 and 3650.

Call Clarity:
E63: Excellent sound and clarity, decent noise rejection.
G2: Excellent sound and clarity, good noise rejection.
Win: G2 by a nose.

Hands-free, wired:
E63: works well with an awful provided headset.
G2: works poorly with a nice basic headset.
Win: Nokia, at least it's usable though the headset is so bad you don't care.

Hands-free, Bluetooth:

E63: Mating with headset is a pain, works well after that.
G2: Mating with headset is a little challenging, works well after that.
Win:G2 by a nose.

Hands-free, Speaker phone:
E63: Easy to use, excellent volume level, poor volume controls.
G2: Easy to use, decent volume level, great volume controls.
Win: G2. Even though the Nokia achieves higher volume levels, the inability to control it easily during a call makes this point moot.

Apps:
E63: Hidden in crappy menu structure, no good customization options.
G2: Easy to install, good menu structure (but not as good as the i68+), easy to customize.
Win:G2.

Overall Ease of Use:
G2, hands down.

For all that, I haven't given up either phone...yet. I haven't checked for a firmware update for my G2 since I've gotten it. If the keyboard thing is fixed, I'll be ready to hand the Nokia to my teen. The keyboard is pretty much what's keeping me on the Nokia right now. But I'd swear less if I gave it up...

Edit, Dec. 18, 2009:
E63: No Data Cable Provided
G2: Data cable provided.
Win: G2

The more I try to get out of the Nokia, the worse it gets.

I can see why Nokia is having trouble...

My Articles on the Sciphone G2:

Tuesday, November 24, 2009

8085 Permanent Hardware Free Run Test

MAG-85 Trainer Hardware in Free Run Mode
Free Run Mode on the MAG-85 Trainer Under Construction

Above is the permanent version of the 8085 trainer I'm building up. I did a "free-run" test with it today, you can see it wired up for that in the image above.

You can read about how to build your own on my 8085 Trainer Project Page on my website.

What you're seeing above is a prototyping printed circuit board with the beginnings of a microcomputer system built up on it. For this test it's got some components on a small solderless breadboard, which is temporarily held on the printed circuit board with a rubber band. The permanent hardware on the board starts at the upper left, where the power supply resides above the shiny metal can. The shiny metal can is the crystal oscillator, which provides the basis of the clock for the 8085 microprocessor. Beneath that is a 4049 chip, which has six inverters in it. Two of these are used for this test, for the 8085's clock, and their output is on the blue wires that go from the 4049 to the big chip, which is the 8085 microprocessor.

In the "free-run" test, the 8085 is tricked into thinking its entire memory is filled with zeros, which translates into "No Operation" or NOP instructions. This makes the 8085 step through its entire memory space. The top four memory address lines of the 8085 are hooked up to LEDs, which blink as the 8085 goes through its memory space. They blink in a pattern that makes it easy to see that the 8085 is doing what it's supposed to do.

The permanent version of this circuit is being built up in the same way I built up the prototype, except that I had to build up a power supply, and of course the permanent version is soldered rather than solderless (except for the temporary test components, as you see in the image.)

Whew!

It's very nice to get to this point and have everything work. When you don't have a custom-made printed circuit board, it's very easy for a lot of things to go wrong. Now I know that my power supply and clock circuits are good, and that I've got the basic wiring for the CPU correct. I've had projects like this crash and burn in the past because I jump in and wire up everything, rather than going forward a bit at a time, testing each section as its added. Even in cases where all the wiring rings out good, and there's no obvious problems when testing before installing the chips in the sockets, I've had small systems refuse to run or refuse to run reliably when assembled.

8085 Circuit being checked out before the 8085 is plugged in.
The circuit is checked out step by step before the 8085 CPU is inserted by probing the 8085's pin positions to make sure the correct voltages and signals are in place.

Now I do things one piece at a time and deal with the fact that getting a working system means spending twice as long in assembly and test as plunging forward headlong and hoping for the best.

For example, in these pictures you can see the guides I put on tape for the pins of the 8085. This makes it a lot easier for me to get the wires in the right places. I also have the 4049 on a little jig to tie its unused inputs to ground until I'm ready to use them. This takes extra time, but lets me isolate different sections of the circuit as I build them, rather than having to build up the whole computer as a piece in order to keep the extra inputs from floating, and potentially causing trouble.

Besides, the build-up and testing is part of the fun of a project like this. No point in rushing past part of the fun. Making something like this is like a crafts project. If you don't enjoy needlework, you're better off buying finished works rather than making your own. The same goes with microcomputer systems.

Other posts on the 8085 Trainer I'm building:

8085 Project Update

8085 Prototype Hardware Complete

8085 Trainer Project

8080A CPUs from NTE (illustration of 8085 Free Run Circuit)

8085 SDK-85 Homebrew Style

Also see:

The MAG-85 Trainer Project Site

Wednesday, November 11, 2009

8085 Project Update

8085 SDK Prototype
I'm still working on my 8085-based SBC. I've finished the power supply for the permanent hard-wired one since completing the breadboard version. I've been slowed a bit by a couple of items--I've been trying to find a way of doing schematics that I'm happy with, and I had a minor medical procedure that's had complications putting me in enough pain that i'm having trouble concentrating for long periods of time.

The pain is just pain of the useless variety--there's nothing wrong that it's signalling. But it's cut into my productivity and the number of hours I'm able to do things that require thought and precision each day. As a result I'm getting less time in on the 8085 than I am on Mythbusters DVDs in the evening. As things get better (slowly), I'm really looking forward to knocking the 8085 hardware out. If all goes well, I should be able to get the core system in this weekend--clock oscillator, CPU, address latch, and memory. Plus an LED on SOD for testing. That'll have a connector since the final version will have the LED on a user interface board mounte on the enclosure.

I've managed to put together the material for the web pages on adding and testing the keyboard as well. Next update to the project pages at saundby.com will include that. It's much more fun with a keyboard.

Developing the system monitor will start once the permanent hardware is complete (scheduled to be around Thanksgiving to clear the decks for another hardware project.) I expect software development of the initial version of the system monitor to run into January. Updates will continue indefinitely... ;)

Tuesday, October 13, 2009

8085 Hardware Prototype Complete


I've finished the breadboard hardware prototype for my 8085 Trainer. Now I've started work on the permanent hardware. I've got what I think is a pretty good idea for the enclosure, which should be easy to construct from standard hardware store stuff. The full story on that will come on my web site once I get it done.

For today, I've added more of the hardware construction info: Adding Interrupts to the LCD Code. This is the last step in construction before adding the keyboard. The keyboard controller uses an interrupt to let the 8085 know it's got a keystroke ready for reading. So putting interrupt handlers in the LCD code prepare the system for showing keystrokes on the display. Once the code is entered as given, the keyboard hardware can be installed and tested with no further software changes.

As soon as I finish this post, I'll be working on the web pages for putting in the keyboard hardware. The MAG-85 uses a 4x5 matrix keypad in addition to the hardware switches. The keypad will be a hexadecimal keypad and some soft switches for controlling the entry modes. Hard switches will be used for system reset, memory protection, single stepping, and other functions. I'm still working out the details for the final system monitor software.

Now, back to web page editing. I must get the web pages up to date, or I don't get to go back to playing with the hardware.

Monday, October 12, 2009

Sciphone G2 Tips




Some tips for users of the Sciphone G2:

  • Fastest way to move all those files you just transferred from the "Received" directory to the place they belong is not to use the Move function in File Manager. Instead, use file manager to go to the Recieved directory, select the file, then select "Open" from the menu. It will ask if you want to "open it from" . Answer yes, it'll move it then open it in the app. Back-arrow to drop out of the app, then do it for the other files as needed.

  • If you're looking for something to select, but it doesn't seem to have it there, use a tap to select the thing you want.

  • If you're selecting a directory, and tapping on it gives you "Empty" (meaning it has no subdirectories, by the way, not that it has no files. It about gave me a heart attack the first time I saw it), then press the OK button below the screen.

  • Be patient. There are many operations that seem to have an I/O delay associated with them.

  • If you've been patient, try again. Clicks and touches can get missed if you're going too fast at some points.

  • You can use the rocker switch on the side as well as the four-way switch on the face to scroll.

  • If you're sick of hearing beeps while using the ebook reader, put it in Meeting mode. You'll feel the shake while you're reading, anyway.

  • Usually you can briefly press the hang up button when you're at the top window to lock the screen. But sometimes it won't respond to a short press. Press again, and hold, then select "Lock Screen" from the resulting menu.

  • Expect everything to be slow if you're running a large video.

  • When answering, the screen may be slow to respond if you tap the "Answer" button. Use the pick-up/call button on the face of the phone--the one that looks like an old phone receiver turned upward on the left side.

  • Have I mentioned patience? Overall, the phone works nicely, but there are points where it seems to pause for a moment, and other times when the menus don't seem to give you the right choices.

  • If a menu doesn't seem to have the logical choice, check selections on the screen if you've been navigating through the physical keys. Vice versa if you've been navigating via the screen. At some points you can only make selections one way or the other, but not both, it seems.

  • Remember that the camera takes the picture after the camera shutter noise. To avoid smearing, keep holding the camera steady until it displays the completed image.


Good luck!


My Articles on the Sciphone G2:

Thursday, October 1, 2009

Why I Didn't Renew My Subscription

This year I've allowed the subscriptions to expire on about half the magazines I used to get. I just got yet another "last issue" begging me to re-subscribe for one of them. My reasons for dropping the mags are not economic--downturn or no, I still have as many dollars to spend on magazines as I had last year. Perhaps even more. I've got magazine dollars I'm not spending now that I'd really like to find a home for, but you, the magazine publishers and editors, aren't giving me any choices that I like.

So let me tell you why I've dropped your magazines:

Not enough content.

Yes, to save money you've cut your page counts. However, you all tell me about your fine web sites with extended coverage and deeper insights.

So, following this logic, I should be happy to go to the restaurant, find half what I expect on my plate, but be pleased that they feature a wonderful web site telling me more about what they serve? Not likely.

I subscribed to almost 30 magazines last year. I'm down to about a dozen now. I don't visit the websites for any of them on a regular basis. None of them have a web site that's worth it. Besides, I don't subscribe to a magazine to get a web site. There's more web out there than I've got time to look at, available for free. And frankly, the magazine websites suck. There isn't one that draws me back.

The websites I visit repeatedly are web sites first. There's no print edition. I don't pay them money to view the sites, since I have to pay to get access to it (my ISP bills, my computer bills, my software bills.) The magazine websites that I'm not visiting regularly are poorly organized, have balky login processes, are overrun with ad content (even in the paid section) and generally are more trouble and less readable than the web sites that are first and foremost websites. Besides, when I'm paying for a magazine I'm paying you to put something on paper and deliver it to my mailbox. I want something I can hold in my hands and read without a computer, put on a shelf, tear pages out of for my coworkers, clip ads from for my contact files, or lay in a stack folded open to an article I plan to read later.

If I wanted to pay for a web site, there are some excellent ones out there that beat the tar out of any magazine's web site I've ever seen.

So, magazine folks, when you're thinking about cutting page count to cut costs, be aware that you're reducing the value of the only part of your product for which I'll pay. I pay handsomely for those who deliver what I do want, however. I have several subscriptions that cost significantly more than the industry norm. I pay it because they give me what I want. A magazine with plenty of content on paper. I subscribe to several magazines that are delivered from overseas. I put up with the delayed delivery schedule and extra mailing costs because nobody in North America delivers what they deliver.

This year, none of the magazines I dropped got dropped because of a shift in the editorial content. That's happened in the past. One magazine that I've been reading for over thirty years is walking the edge right now--their current leadership has introduced a political slant into a magazine that has been blessedly apolitical in the past.

Another magazine to which I was a charter subscriber has been trying to sell me on their wonderful new web site with all sorts of information that they aren't giving me in print. They're on the watch list, too. I'd hate to drop them, but if they don't put it in the magazine, it means nothing to me. I hope their staff figures this out, pronto. I don't buy magazines to get teaser ads for web content. If you're telling me about all the fine stuff that's not in the magazine, you're just telling me how valueless the print magazine is, and that's the only product you have that I'll pay for.

I'll pull your advertiser's ads to save their URLs for later. I won't do the same to read your articles.

I don't want your email newsletter. I couldn't care less about your web site. If you want to sell me a magazine, you'd better make it, and it alone, a product worth my time and money. Nothing else is going to get my dollars out of my wallet and into yours.

Controlled Circulation Magazines

Those of you who send me magazines for free aren't getting off easy, either. I've dropped about half of your subscriptions as well. Some of you are sending me your magazine anyway, and I roundfile it as soon as it arrives.

Cudos to one magazine for rediscovering their purpose, however. Design News magazine was a mainstay for me through the 80's. It has been less essential to me for the past 15 years or so, however, as it seemed to forget that it was an engineering magazine. I have let my subscription lapse during that time. Lately, however, I've been impressed with a turn-around I've seen, particularly in the most recent issue I read. They seem to have found out that they can print detailed technical articles to help engineers with actual design issues. I'm very happy with what I've seen and hope to see more of it.

The magazines that are most useful get read the earliest and most, and those are the magazines where I see the ads. Those are the ads that have a chance at telling me about a product that I can use, or research and recommend to my customers. In my business, I only buy in ones and twos. My customers buy by the thousands or more when they incorporate my designs into their products.

Now back to those magazines I'm not getting. First, there's that content thing. What you print needs to be something useful to me. Not a puff piece that's about as useful as what I find in an in-flight magazine. I want specifics, I want a voice of experience. I don't care if the author is with the manufacturer, some of the best information I get comes from such sources. Naturally I expect it to come from a source within the company that won't have to ask for help with long technical terms.

The second most popular reason for me not getting a controlled circulation magazine is that you don't send it to me when I sign up for it, and supposedly been approved. There are several that I'm getting emails about telling me I should be getting the mag, that I'm someone they want to get their mag, but when I sign up nothing shows up in my mailbox. There are several I&C and engineering mags that keep marketing me but, when I fill out the form, get the happy web page telling me I now have a sub, I never see a mag. But I do get more emails telling me I ought to sign up for a subscription. Time for your left hand to meet the right, people. That's the one that's cutting your own throats, by the way.

To all magazines, I can't emphasize enough:

Content, content, content. On Paper. If it's not in the magazine it doesn't exist.

Subscription based mags: Raise your rates if you have to--give me something worth money and I will pay for it.

Controlled Circulation: If the content is there, I and others like me will be, too. We'll be selling your advertiser's products when we put them in our designs.

Need a way to save money? Slash your web staff and server budget. All you need on the web is an introduction to your magazine and a subscription form. An article index can be useful sometimes. Anything else is wasted. Put the savings toward more paper.

Monday, September 28, 2009

8085 Trainer Project

I've posted a web page on my 8085 micro trainer that I'm building. I've posted instructions on building the system up just as I'm building it, along with my notes.

To date, I've posted instructions that go through getting the core system running with a memory, adding switch inputs through interrupts, and giving the 8085 an LCD display as an output. I'm presently integrating the LCD driver code with the interrupt code, then I'll add a keyboard to the system.

This system will be a small, hand-held micro trainer. It's intended for easy, anywhere machine language programming of an 8080-compatible system, for those of us who find such activities fun and relaxing.


Check it out >>


Yes, I do machine language programming for relaxation. I also crochet Irish lace and embroider knotwork patterns for relaxation. I like things that are mentally engaging, but that can proceed at a casual pace for unwinding at the end of the day.

In case I'm really fried at the end of the day, I keep databooks stacked on my bedside stand.

Have a look at my electronics web pages.

Wednesday, September 23, 2009

Mystery Computer Identified

The Mystery Computer that I blogged about yesterday has been identified. Thanks to the helpful folks at the Vintage Computer Forums.

The identity is revealed on the Mystery System's Web Page.



Meanwhile, an update to my website is getting closer. I've nearly finished the electronics section with a huge new addition of material, then the rest of the website is getting a once-over to improve appearance, usability, and to automatically whiten the smiles of readers while they peruse the contents.

Mystery Computer



I've got a couple of boards for a Z-80 SBC that I don't recognise. Take a look at the images at saundby.com and tell me what you think if you recognize them.

Thanks.

Monday, September 21, 2009

8080A CPUs from NTE

I was in Fry's Electronics recently looking for some parts. I didn't find what I was looking for (non-volatile RAMs) but while I was looking I went through the catalog of parts they carry--the NTE semiconductor catalog.

You could have colored me shocked when I saw the 8080A and its support chips in that catalog! I looked around to make sure I hadn't slipped back 30 years to the Fry's grocery store with the "chips" aisle: potato chips on one side, semiconductors on the other.

What surprised me even more was that while the 8080A was there, the 8085 wasn't.

8085 circuit
A Relatively New 8085 IC in a Circuit Built Three Days Ago
8080A prices from NTE are about the same as 1978 or so, about $20US. In other words, they're at about post 6502 prices, but higher than the Jame-pak blowouts of the early 80's (about $2-3.)

Once you add a clock chip and control signal demux chip you're talking real money, especially today when a solid microcontroller comes in at a buck or less.

The real mystery to me is where these chips are being made. Is there some fab out there still cranking out 70's-era NMOS process wafers? On 2 or 3 inch? Or are these old production stockpiles? Or--heavens forbid--did someone bring the 8080A to a new process? Five-metal sub-micron 8080As, still rated for 2MHz, perhaps? I don't think so, but I never expected to walk into a Fry's in 2009 and find 8080As offered for retail sale, either.

I know the 8085 is still very popular in education, is it still in production? If so, I haven't found it. What keeps the 8080A in production? Does NTE have a supplier that keeps 30 year old fab equipment in his basement with a supply of wafers and a packaging setup in the spare bedroom?

Inquiring minds just can't help wondering...

Saturday, September 12, 2009

The Trailing Edge: A New PS2

The Time is Ripe

Last Friday we stopped in at our nearby Blockbuster video to pick up a couple of used movies. While we were there I noticed that it looked like they were blowing out their PS2 games. I didn't get any, as I had no PS2 to play them on. During the drive home my brain coupled this with the announcement of the newer, cheaper, slightly crippled version of the PS3 and it occured to me this might be a good time to pick up an inexpensive PS2, accessories, and game library.

Opportunity Knocks

This week I was in our local thrift store with my daughter on Thursday while she shopped. When we got to the checkout, there was a PS2 in the display case, bundled with a wireless controller, memory card, and cables for $50. I decided to get it even though it hadn't been tested, once I learned they had a guarantee on electronics. I also got a couple of games. Shadow of the Colossus is one of the games that's had me interested in the PS2 for a long time. The visual design, at least, looked like something to make the game an experience. I wanted a second game as well, for a break or in case SotC turned out not so good. Star Trek Encounters was the only other one I could see buying.

It's Alive!

Once the other events of the day allowed, we hooked it up to the big screen. It came up fine, we needed new batteries in the wireless controller but all else worked great as-is. The unit says it's a model 13001.

SotC spun up fine, and it wasn't long before the kids and I were soaking up the extremely lengthy intro video. After some time and a lot of riffing on the intro, we finally got to play. Having neglected the written directions, it took a while to figure out how to find the first enemy, and to satisfy ourselves that we didn't have a choice of encounters.

Goya's Colossus
You don't get to fight this guy in Shadow of the Colossus for PS2, but he's not far off from the ones you do fight.
Some time later, I and my oldest got frustrated with Shadow of the Colossus. We managed to get onto the first critter's leg, but were constantly stymied no matter what approach we took to get higher. I'd managed to get a bit higher on the leg through an apparent fluke, but neither of us could manage it again. After a bunch of gambits were tried, we got fed up and put in Star Trek.

Space, the Boring Frontier

OK, I'm all for tutorial levels in games, but when a modern game comes in as more patronizing and less interesting than something like Master of the Lamps from the Commodore 64, that's bad. MotL was a good game for its day, a mix of a fly-through-the-rings game and Simon with very nice graphics for the time as well. But today we're in a world where excellent puzzle/platformer games like Spyro the Dragon have raised the bar more than a little.

Encounter may turn out to be a good game, but I may never get past the fly-through-the-rings tutorial to find out. Frankly, I'd rather fire up Spyro on the PS1, which has more interesting ring puzzles and better controls.

Never Count Out the Small Fry

Afterward, we did a little web browsing to see what others recommended as the best games for the PS2. I knew I wanted Katamari Damacy, our browsing added Black (destructable environments was the selling point) and God of War (action, reports of good controls) to our short list of games.

Then my youngest decided to take a crack at Shadow of the Colossus. I'm not sure how, but it turned out she didn't get a chance to try it earlier. I left her with the controller and hit the sack. In the morning, she reported two kills.

The Dumpster Beats Us

Today I returned to Blockbuster. Either they sold out nearly all their PS2 games or, more likely, tossed the unsold stock after Labor Day. It was the same at another Blockbuster. And the bin of clearance games at K-Mart was gone. Best Buy had a selection of new games, but only a couple of pathetic clearance-priced games. I was beginning to wonder if I'd bought the PS2 a week too late.

We finished up some more mundane shopping, took it home, then set out on a longer trip to try Game Stop and Electronics Boutique, both about 50 miles from home.

Game Stop FTW

We hit Game Stop first. We looked at the racks of PS2 titles in the racks in the center of the store and were striking out. A rack of sports games had nothing of interest, either. There were enough titles that we could easily have missed something, so I kept looking while one daughter went to the counter to ask after the games we wanted. That turned out to be the key. There was an entirely different shelf of PS2 games near the counter--those worth owning. I hadn't even looked at it, I'd taken it for a customer holds shelf or something like.

We came away with all three games and a second wireless controller. After a little more shopping at stores nearby without locations nearer home, we headed for home to try out our new games.

Shadow, Second Attempt

First, I decided to take a second stab (so to speak) at Shadow of the Colossus. This time I was more careful of how I used the controls. I think my mistake the first time was trying to "jump" to higher handholds on the critter while pressing the direction control stick. Letting up on the stick while jumping and pressing the "hang on" button had the desired effect. After only two or three tries I managed to do what I'd failed at waay too many times the previous night.

If my kid hadn't managed it I might have given up on the game. I'm ready to take shots at Colossi 2-16 now.

Katamari Killer-App

We then tried out the new games. Black was tough for my oldest on her first go. I took over, and showed her that aiming through a combination of turning and "strafing" movement works best. She had a great time with God of War, however. I'm looking forward to playing it.

Katamari Damacy is amazing. It's silly, offbeat, and incedibly fun. It's got a wierd humor to it along the lines of the Wario games, but a bit more madcap and less body humor. I think they pitched it just right. The game is engaging--challenging while being simple. There are enough interesting side challenges and fun things in the levels to take a seemingly too-simple game and make it into something well worth spending the time to play.

Katamari Damacy is worth the price of the system all by itself.

The two-player game in it makes me glad I got the second controller, too.

I'm looking forward to seeing what else is on the shelf at Game Stop, and getting in to Electronics Boutique, as time goes on. I suspect the other Katamari titles and God of War II will be on my list.

Sunday, August 30, 2009

8085 SDK-85 Homebrew-Style

My retrocomputing took a turn for the even more retro this past week. After bringing up an old Ampro Little Board and programming it with nothing more than a simple line editor and non-relocating, non-macro 8080-only assembler I caught myself wishing for a similar experience in something more portable.

Ampro little board plus pcb
Ampro Little Board Plus SBC, before placement in fat box.
I've had several different micro trainers, the COSMAC Elf among my favorites. I enjoy them a lot. The best are small enough to use without a table top, and battery powered. Since I'm presently doing 8080 assembly on the Ampro (it's a Z-80, so it runs 8080 code) I thought it would be nice to have a small 8080-compatible trainer board.

The classic 8080 compatible SBC is the Intel SDK-85. It's a great small system that has started countless numbers of engineers on their path to digital electronics greatness. It comes with a nice keyboard, a decent display, a nice monitor program, and an 8085 core system that's ready to go for plenty of I/O. They're still very popular, which means they are pretty expensive--at least for someone who just wants a small system to use for fun. The PCB is a bit large for portability, as well. But there is excellent support for it, plenty of software and a number of books.

Since I couldn't see paying for an SDK-85 when I've got parts drawers with 8085s and Z-80s in them, I decided to build my own system. Even though I like the advancements the Z-80 added to the 8080, I decided to go with an 8085 as the heart of my home-made system. To some degree, it was the retro thing striking. The Z-80 feels a bit "new" (actually it and the 8085 came out about the same time, but I didn't get a chance to use a Z-80 myself in my own designs until a few years after putting together a couple 8085s.) If I had had an 8080A, I would not have used it. I'm not that retro-foolish. It is much more of a pain to build a system around than either an 8085 or a Z-80. I'd rather build an 8088 or 8086 system, to tell the truth, or, rather, a V-20!

So I pulled my newest datecode 8085 out of the drawer and got going.

8085 free run circuit on solderless breadboard
The simplest possible 8085 microprocessor circuit-a free run circuit.
The picture shows what I accomplished on the first evening. I decided to take things in little baby steps, since I haven't worked with this microprocessor except in established designs in many years.

Since I'm doing the initial build on a logic lab with power built in, I didn't have to worry about a power supply for now. Next was to get the clock circuit sorted out. A crystal oscillator makes that easy. I put its signal through a 7400 to get a push-pull design since I intend to run it up to 6MHz, and the 8080-85 Family manual recommends this for 6MHz and above.

The next step was to drop in the CPU. If I'd had to build a complete core system right off the bat it would have taken longer than one short evening to get something going. And it would have introduced countless opportunities for error, which I am very adept at inadvertently locating. So I built what's called a "free run" circuit. You hardwire in an opcode that doesn't stop or redirect the processor, then it runs through its entire address space when you fire it up. It allows you to make sure you have the clock and CPU control wiring working, at least in a nascent form.

The resistors above are the hardwired instruction. They allow the CPU to put a value on those lines without forming a short to a power rail, then pull the lines to the instruction value when the 8085 is reading it. The instruction is 00, a NOP or no-op in 8080-85 terms. The CPU does nothing and moves on to the next address.

The yellow wires at the top wire some of the address lines to LEDs so I can watch the 8085 step through its address space.

After one fix of an improperly placed wire (/RESET), it worked fine.

Evening 2 had me adding an address latch. Again, moving by baby steps. Evening 3 added an EEPROM with a four byte program:

0000 3E C0 MVI A, 0C0H ; enable SOD, set it high
0002 30 SIM
0003 76 HLT ; stop

Hand assembled and typed into my Xeltek Superpro/L's buffer directly for programming the EEPROM (as are all the programs for my 8085 to date.)

I got that working to demonstrate the successful interface between the 8085 and a memory. I turned up another wiring error while I was at it (address lines A1 and A3 were swapped coming off the latch.)

Next, I was going to add a RAM but decided to replace the EEPROM with a NOVRAM instead. I've got some Dallas DS1225Ys that I pulled off some scrapped SCSI controllers years ago. They're ten years past their expiration date, but most of them are fine. Using a NOVRAM lets me reduce system memory to a single chip. It also sets me up for all sorts of amusing misadventures (like all memory going *poof* if the /RESET circuit isn't rock solid.) Trade-offs are part of the design process. If I get too annoyed with cleaning out system code in interesting ways, I'll add an EPROM once I've got a simple monitor program written.

Next was testing the RAM with a simple program (presented here un-assembled):

MVI L, 0F0H ; set up memory pointer
MVI H, 1FH
MVI M, 5DH ; write out some easily recognizable bytes
INX H
MVI M,41H
INX H
MVI M, 52H
INX H
MVI M, 5BH
MVI A, 0C0H ; show we did something, turn on LED on SOD
SIM
HLT ; stop

Then i pulled the NOVRAM and read it on my programmer. It showed that the program ran fine, verifying that I'd rewired for the DS1225Y properly. I even got the circuit to stop futzing the RAM up at power-on when I put a pull-up on the RAM's /WE line. ;)

Now I've got switches connected to the interrupt lines on the 8085 to provide me with "interactive input." I wrote a program that blinks the SOD LED a different number of times depending on which interrupt it's servicing.

Next is adding I/O for a keyboard and multidigit LED display. I did consider the idea of using just the interrupt lines for user input. An old telephone rotary dial switch and a little code would do the trick. But then I decided it'd be too noisy, compared to a keypad. And maybe just a wee bit too retro for daily use.

Edit: I've done a complete write-up of thise project at saundby.com. This includes assembly instructions, design notes, project code, and so on.
8085 SBC prototype

Tuesday, August 18, 2009

Retrocomputing with CP/M--and Only CP/M

Ampro Little Board CP/M Computer System

I recently put together an Ampro Little Board Plus computer system from the 1980s. This system was especially slick for its day because of its small size and the fact that it had a built-in hard disk interface. It had the whole computer on one printed circuit board roughly six inches by eight inches. And it had a SCSI interface.

Originally I had the system set up as pictured above, loose components on a table top. There was the computer system board, two floppy disk drives, and a serial terminal. Since then I've moved the computer into an ugly beige PC box to hold things safely while I complete the hardware work on the system. In time, I plan to move it all into an interesting enclosure. I bought a large candy jar, for example, but it turned out to be just a bit too small.

The system now has three floppies and a 1.1GB hard disk. It's only capable of using 88MB of that hard disk because of operating system limitations, but the rest of the disk is accessible if I want to write software to take advantage of it.

Right now, the system has nothing on it but the software that came with the system board. That means the CP/M operating system with some enhancements from ZCPR, a really neat set of programs from Richard Conn that make CP/M almost as good as Unix. Better, if you consider the size. I've intended to load that huge 88MB hard disk space with software, but all my CP/M software on 5-1/4" disk is hiding from me somewhere in my cupboards. Probably behind boxes of MS-DOS software.

So I've decided to go ahead and start using the system with what I've got. I've got:
  • An Editor (ED.COM)

  • An Assembler (ASM.COM)

  • A Linker (LOAD.COM)

  • A Debugger (DDT.COM)

  • Various system utilities.

What more could I possibly need, right?

ED is a line editor, not a full-screen editor. If you're on a big noisy teletypewriter for your system console it's just the thing. If you're on a CRT console, like I am, it feels a bit dated, even for a retrocomputing enthusiast like me. Normally I like to rush straight into loading up WordStar or WordMaster or one of their clones. With this system, I've been stymied in either finding the software or being able to get it off one system (a Kaypro) and onto the Ampro in the time I've been willing to dedicate to it (granted, I haven't really tried hard. Let's just say it hasn't happened with unexpected ease. A null modem cable and some patience is really all I need.)

It seemed like an interesting challenge to jump in on this system with nothing more than what it comes with. In the old days, I would have done this as a matter of course since there would have been a delay between getting the system and the time when the bank account would allow me to go back to the computer shop for software. Well, except I probably would already have had WordMaster on hand.

One of the things I wanted to do was go through some of the assembly language programming exercises in a book on 8080 and Z-80 programming by Alan R. Miller. So I jumped in this weekend and started entering assembly language programs with ED. Jumped in? Stumbled, stubbed, and tripped in would be more like it. I didn't remember ED, or its pitfalls, nearly as well as I thought I did. I have been coddled by the luxury of the full screen editor for too long, and too clearly remember the fine line editor of the HP3000 compared to how well I remember the idiosyncrasies of ED.

Fifteen minutes in, I was ready to give up the whole experiment and go looking for my WordStar disks again. But I persevered. I re-read the section on using ED in the CP/M manual, and managed to sort out how to do what I wanted to do through a combination of assembling information from various places in the manual, accessing long unused memories in my head, and a form of logical deduction not unlike mental Ouija.

Now I've managed to enter, edit, and successfully assemble the first exercise in writing a monitor program from the book. ED's not such a problem, once understood, so the experiment will continue. It feels pretty good, now that I'm on top of things. It's almost enough to make me think about going even further retrograde, to programming PROM chips by hand.

Naah. Not quite.

Thursday, July 23, 2009

A Bit of Retrocomputing: Bringing Up an Ampro Little Board Plus with CP/M and ZCPR

Computer Terminal, bare PCBs and unhoused floppy drives running rampant on the kitchen table.
The thing with the screen on it is NOT the computer, it's the terminal. The computer is the little printed circuit board laying to the right of the terminal.
Tonight I managed to bring up a really neat little computer for the first time since I obtained it. The computer is an Ampro Little Board Plus. It's a Z-80 based single board computer from back in the 1980s. I've been working off and on at getting this computer up and running over the past three days. Tonight I actually managed it.

Back in the day I lusted heavily after one of these systems. I guess it just goes to show, if you're patient enough you can get what you want! First there was the Ferguson Big Board, a full system on a single printed circuit board, conveniently sized to attach to an 8" floppy drive. Then there was the Ampro Little Board. It was sized to attach to the bottom of a 5-1/4" floppy disk drive. I don't know why, but slick little things like that sell me.

The Ampro Little Board is a 4MHz Z-80 computer. Yes, four megahertz. It has 64K of memory. Once again, sixty-four kilobytes of RAM. That's not cache, that's main memory. It also has an on-board floppy disk drive controller, two serial ports, and a parallel port. That's a complete computer system. Unlike the Ferguson, the Ampro didn't include circuitry to drive a video display or talk directly to the keyboard. It uses a serial terminal.

The Ampro Little Board Plus PCB, hanging out in the breeze.
My Ampro Little Board Plus, Sitting Out in the Open
The board I've got is a Little Board Plus, which is the same as an original Little Board with the addition of a SCSI interface. This board is part of a treasure trove that was given to me by Dave Baldwin, former editor of The Computer Journal. I've been working with several of the other systems he gave me, and I've only just started to get to the ones that came as circuit boards rather than as built-up systems.

While just getting started, seeing if the board is even functional, I kept the extras to a minimum. To start up the LB+ you need:
  • a terminal,
  • a 5-1/4" floppy disk drive,
  • a power supply,
  • the right cables to hook it all together,
  • all the jumpers set properly
  • and a system disk for this particular system.

I got started on this a few days ago, by pulling out the documentation for the system and reading it. Then I read it again with the LB+ on hand so that I could go along and check the jumper settings as I read. Then I started to make up the special cable the Ampro needs for a serial port connector to go to a terminal. I found a connector of the right type, with just one extra pin position that wouldn't cause trouble so long as I was careful how I plugged it in. I halfway through wiring it up to a DB-25 connector when I took a break and found a finished cable sitting in another box.

A reused PC power supply, with lots of dangerous loose wires.
Not OSHA Compliant.
For a power supply I used an old PC power supply pulled out of a system that got scrapped out a long time ago. The supply was the third one I tried. Two others didn't work. The first was an old XT power supply with an actual switch on the side that I planned to use so that I wouldn't have to jumper the Power On line on a newer supply. It just sat there, so I'll have to open it up and see what the matter is another day. The second was a sweet little ATX supply, more compact than most I've got around. It put out the standby 5 volts, but wouldn't come up when I pulled the Power On line down to ground. But the third one worked. I feel a bit like the guy who built his castle in a swamp in Monty Python and the Holy Grail.

Ugly cabling and bare electronics all over the place.
Guess what? We're not eating dinner on the table tonight.
Since this was a quick and dirty setup, everything was out in the breeze. I drummed up an old 48TPI floppy drive and hooked it up to the board. The serial cable I used between the Little Board and the terminal was my trusty old "Smart Cable." I remember buying it years ago, fretting over the price. I paid a lot for it (I don't recall the amount, but it was probably something on the order of $50 in 1981 or so), but I knew it'd be worth it since there's nothing worse than wondering if the reason things don't appear to be working is that you've got a serial printer cable instead of a serial terminal cable, or a crossover cable when you want a straight-through, or vice versa.

You can see my Smart Cable in the upper left of the above image. I love that cable. It lets me get on with what I want to do and sweat the details later. A bargain at twice the price.

When I first applied power, the floppy drive motor came on, but it didn't try to seek. I wasn't sure of the health of the drive (it's only been laid by for about 25 years now), so I went and pulled another old 48TPI drive that I had on hand. This shows that I was prepared--I didn't have to look for the right box in the garage for two days then give up and pull one out of another system.

I set the drive select on it, double checked my cable and connections, and this one worked. I took another look at the original floppy. I discovered that I'd missed the jumper on the drive setting by one. I had it set to "Drive Select 1" rather than "Drive Select 0." The system expects to find its boot floppy at Drive Select 0, which is Drive A in CP/M by default.

So I modified the floppy cable to take out the twist that they put in for PCs so that you don't have to muck around with drive select jumpers, and hooked up the second drive. Now I had a two drive system. Woo hoo! Now we're cookin' with gas!

The whole system, working like a champ. Now to find a box to stick it in.
The Ampro Little Board Plus with Two Drives, Running CP/M and ZCPR3. Welcome to the Future.
Once I saw that things were working, I called my kids away from their multi-gigahertz Intel Core 2 Duo Macintoshes to come have a look at a "real computer." I'm always curious how this stuff looks to kids who've grown up in the modern day and age. Their first computers were HP9000 Unix workstations purchased surplus from a local university about 10 years ago. They each had one, they used the command line to play a MUD, and their favorite X11 app was Neko. A few years later they got upgraded to Apple Macintosh G3s, old at the time but new and exciting to them. The catchphrase was "Yay, we've got iTunes!" Now they're on Mac minis. The older one was playing with Blender doing 3D animations while I was figuring out my floppy drive problems, the younger one was uploading a website she created about pandas using ftp.

They thought the system was pretty cool. I told them what each IC on the Ampro board did (try that on your current system!) and how the system worked with the terminal. Then I ran a disk format and let them watch the floppy drives move their heads and spin the disks.

They asked me how the disk worked, and I explained how the data gets laid down, why the head moves far enough that you can actually see it move from track to track, and so on. They were amazed when I pulled the disk out. "It's all mechanical!" They were expecting me to type something and have the disk spit out of the drive automatically. When I reached over, flipped the handle, and pulled the disk out by hand they were amazed.*

The younger one thought the drives would take both 5-1/4" and 3-1/2" disks. I realized she thought the cutouts for the finger relief were cutouts to allow a different size disk to be inserted, and showed her that it was just for fingers, I'd need a different disk drive for a different size disk.

They then got to watch me make a copy of my system disk. Tick-tick-tick-tick went the head. I called off the sides and tracks to them as the drives worked.

Then I put them both on the spot.

"How much data do you think is on this disk?" I asked.

The younger one bit first. "About half a gigabyte?" she said.

The older one's face showed that she didn't think much of her sister's guess. "...or less?" said the younger, looking for a save.

"How much do you think?" I asked the older one.

"About a hundred megabytes," she said. I managed not to laugh. It reminded me of the time I pulled out a turntable and put on a 45 several years ago when they were younger. While the song was playing they asked me, "How many songs does it hold?"

When I said the floppy disk holds 360 kilobytes tonight, they had me verify for them what order of magnitude a kilobyte was. Then they looked very thoughtful.

We wrapped up with me showing them some utilities and giving some demonstrations of how a terminal differs from a keyboard and display directly on the computer.

I'm really pleased to have this system up and running. Next steps are to find it a temporary box to live in so that a 50,000 volt cat doesn't fry things (and so that we can go back to eating dinner on the dinner table.) Then I'm going to see about getting a hard disk on it and load up the hard disk with all my favorite stuff (Wordstar, FTL Modula-2, Trek, and so on.)

*This just goes to show how it's novelty that makes things seem special, not what it actually does. I'll never forget the Mac and converted Lisas spitting out 3.5" disks automatically and how cool it looked back then (as well as how stupid it seemed from a practical standpoint of someone who was going to be damned if he was ever going to ask a computer to pretty please give the disk back.)

Tuesday, July 7, 2009

Bluetooth Headset for the Sciphone G2: Round 2

I had a little trouble getting my new Bluetooth headset to charge up, but now it's charged and ready to go.

Samsung WEP200 Bluetooth Headset
Blue Light=Good
It paired up with the Sciphone G2 just fine, the only hiccup was getting the correct menu (I'll post a step-by-step on my website soon, but it's not difficult.) Once paired, the phone switches automatically between the Bluetooth profile and General profile automatically depending on whether the headset is powered up or not.

Note: You'll want to make sure that you've got a reasonable ring tone set up for the Bluetooth profile, it won't default to the same one as your General profile.

Once on Bluetooth, everything worked great. The sound is good, there is no noise in the background as there is with the included wired headset. I'm still working on that problem, but Bluetooth is certainly a reasonable work-around.

Upshot is, if you're a frequent headset user (while driving or whatever), expect to purchase a Bluetooth headset to use with this phone.

I looked at the headsets at retail outlets, and choked at the prices I saw. Fortunately, I found that online prices are far more reasonable. I've linked the unit I bought here:


It's a pretty basic unit, no stereo but inexpensive, comfortable to wear, and it has good sound. The buttons are large enough to use easily while you're wearing it. Some headsets I've seen have volume controls that are impossible to use without pulling the headset out.

I'm still new enough to wireless headsets that I feel like I ought to be quoting Lieutenant Uhura while I'm wearing one, but nonetheless I'm happy with the one I got.

Also, the charging problem is easy to overcome once you realize it's there. If the light is flickering when you set the headset in its charger, take an extra moment to seat it properly. It's obvious once you know.

My Articles on the Sciphone G2:

Bluetooth Headset for the Sciphone G2: 1st Lesson

I picked up a Samsung WEP 200 Bluetooth headset to use with my Sciphone G2. I got it online at a great price. There were other headsets, but I wanted something with usable buttons, not something miniturized to the point of uselessness. The WEP200 looks like it'll fill do what I want, from the reviews I've read.

It arrived yesterday. I haven't used it yet, though. Step 1 in the instructions is to charge the headset in its little carrying case charger module.

The instructions say it'll take 2 hours to charge. So I tucked it in, and got a red LED which it is supposed to display until it charges, at which point a blue LED lights up. Well, after waiting overnight the red LED is still on. Sort of.

It's actually flickering a bit. Just a little, barely noticeably. I opened the case just now and fiddled with the headset. Now the light is on solid red.

Lesson 1: If the little red LED on the Samsung WEP 200 headset is flickering, it's not going to charge in two hours. It's not even going to charge overnight. Fiddle with it until it doesn't flicker.

More later, as events transpire...

Once the LED turns blue.

My Articles on the Sciphone G2:

Thursday, July 2, 2009

Sciphone G2 Headset

There's one problem I haven't managed to solve with my SciPhone G2. When I'm on a call, I get noise on the included headset.

Sciphone G2 Headset Ear Plugs and Control image

When I'm listening to music through the headset, it works great. When I pick up a call, the G2 pauses the music. Perfect. However, noise then appears while I'm on a call on the headset. It sounds like radio interference.

Handset Sound Quality: Excellent


The G2's sound quality from the handset is excellent. It's as good as my old Nokia 3650, which had excellent sound quality, even when compared against other top-notch mobiles. It does a great job of picking up my voice, rejecting ambient noise, and of playing the sound from the other end of the call. It also does a great job of picking up audio when in speakerphone mode, though the location of the microphone makes it more sensitive to direction than my old candy bar phone with its mike on its face panel.

Headset Sound: Not Good

When I'm using the included headset, however, I get noise. I've worked with SciPhone on this, but we haven't resolved it yet. I'm doing some more testing on my part to get back to them with more information at this point, because I strongly suspect it has to do with the fact that the headset cable doubles as an FM radio antenna for the G2. I was going to put a ferrite on the headset's cable to see if it cut the interference at all, but I've recently reorganized my electronics storage and I can't find my ferrites now (so much for being organized!)

The amplitude of the interference drops as I turn down the headset volume. But it doesn't go away until I turn it down to the point where I can't hear the call any more. Both sides of the call hear the interference.

Headset Plug

The non-standard plug end of the G2 cell phone.

The plug on the headset is non-standard, so I can't just plug in another headset and see what happens. There is said to be an adapter available from mysciphoneshop.com, you'll want to make sure you let them know you want it for a G2 to get the correct pinout if you go there to get one. I'm going to be trying something else, though.

The Workaround

I'm continuing to work on the problem. Meanwhile, I've ordered a Bluetooth headset to use with my G2. This will let me use the phone hands-free conveniently for the time being.

I suspect the problem with the included headset came about as a result of differences between the RF environment between here in the U.S. and China. I'm going to keep doing some testing, but I'm planning on being pretty conservative in how I do it. Once I find some ferrites I'll have a chance to see whether it's really coming from RF interference or not.

So far, this is the only real problem I've had with the G2. Everything else has worked well for me.

My Articles on the Sciphone G2:

Wednesday, July 1, 2009

Atari 7800 Video Modification

My website that details a modification to the Atari 7800 video game console to give it either composite or S-Video output has been moved!


Warning: Extreme Video Clarity for the Atari 7800!
Saundby's Atari 7800 Mods

I not only tell you what parts to use, where to get them, how to assemble and adjust the circuit but I also explain the electronic principles behind it all.

You can use it as an S-Video output by using the luma and chroma outputs separately, or as a standard composite video signal by tying the luma and chroma signals together on one line.

Friday, June 26, 2009

A New Sciphone G2

Well, I've got a new Sciphone G2 cellphone. My first one developed a problem with the touchscreen, so Scophone has replaced it for me. The replacement took some time because of postal transit time for my old phone going back. One the replacement was on its way, it got here in just a few days.


The original one, which looks just like the new one from the outside.

The problem the first phone developed was that the touchscreen sensed the touches on the screen reversed top-to-bottom. It made the phone pretty hard to use. A restore to factory settings didn't do the trick (typing in the password with an inverted touchscreen was a trick, though), so Scophone asked me to send it back for a replacement. I have no complaints about Scophone's service, that's for sure.

I haven't had a chance to fully "ring out" the new phone yet, but so far it's looking really good. For one thing, the battery cover comes off this one without too much trouble. The first one was more difficult than I felt it should be. This one is just right. It's not going to come open when I don't want it to, but I don't feel like I'm going to break the phone when I open it. Also, the stylus fits better. It was too hard to get out on the first phone, at least for the first few goes. After that it wasn't quite so bad, but it was still more trouble to get out than I felt it should be. This one is, again, just right. It hasn't loosened up any with use, either.

I've got the new phone on my home's WiFi network again, and soon I'll have everything configured just as I had it on the first phone. It looks like there have been some minor changes to the software. I'll be posting more on the phone soon.

My Articles on the Sciphone G2:

Thursday, June 18, 2009

A Semester with Greenfoot

This last semester I used the Greenfoot framework as an integral part of my high school computer class. It was an experiment to see what it could do for the students compared to the way that I've taught my class in the past. Based on the results that the students achieved, I'd have to say that Greenfoot was a very good addition to our class, with only a few reservations.

In my high school computer class, I spend the fall semester on basic computer skills, background knowledge, horizontal applications, and basic networking and communications knowledge. The highlights of the semester are class-produced websites (last year's are visible here), and a document including text, graphics, and tables which is a proposal for a video game concept. For the websites, I have each student produce a basic set of linked web pages individually while we learn rudimentary HTML and CSS, then the students are grouped into teams for the main website project. The game proposals are produced individually, and I have each student give a presentation to the class of their proposal.


The Problem: Getting Graphics

The second semester of the class moves on to computer programming. For this we use the Java programming language. It's not perfect for our needs in class, but it works well enough, as I've discussed before. One problem I've had with using Java as a teaching language is that while it has graphical abilities, they are so generalized that the learning curve for using them is difficult to manage in the limited class time we have. I want to provide at least a basic sense of what's happening in the computer when programming--all that stuff about data types, data structures, algorithms and so on--but still have sound and graphics available for the students since they provide a lot of motivation, as well as giving a source of feedback to students on what their program is doing that is more visceral than text. Likewise, different students respond to different stimuli. Some can perceive patterns in text, but more often they're more prepared for perceiving them in images or sounds. So this sort of program output can be critical in whether a student "gets" what a program is doing when it runs. I've discussed this in more detail before.

With the simple, constrained systems of the past, e.g. Apple II, Commodore 64, Atari 800, etc., accessing basic sound and graphics was easy compared to present day systems. There are still BASICs available today that provide the same sort of access, but they're also more divorced from mainstream programming than was the case 20 years ago. Java, while a relatively simple language in many respects, takes a very generalized approach toward graphics and requires a substantial amount of program infrastructure for graphics which is a distraction and source of confusion to new programmers.

Greenfoot: The Answer?

Enter Greenfoot, a framework for Java with design goals directly in line with my needs, it would seem. I admit to having some concerns and misgivings as I was preparing to use Greenfoot in class. Prior to the start of the year, I had two students try out Greenfoot over the summer. At the end of the first semester, the class members gave their video game proposal presentations and the class selected four games for development.

Now the semester is over and I've got time to reflect on the results of the year.

The games have been completed and posted to the Greenfoot Gallery. You can see what the students themselves had to say in their development blogs, linked below.


Army of One: Stoner Wombats

One of my students was having trouble meshing with a working group. After trying a few different arrangements, I ended up putting him on his own to work on an individual project. Since he was working alone, and had less time on his project than the other students, his project is far less developed than the others. Still, once on his own he was able to apply himself and showed the initiative to solve some programming problems he ran into in attempting to implement his ideas in his game. Here's his game:

Stoner Wombats


Never Say Die: Offroad Xtravagaanza Becomes The Art of Clay Pigeons

One of the groups started with an ambitious idea for a motorcycle simulation. They wanted something like the popular side-scrollers that simulate a motorcycle's balance and suspension while traveling over an obstacle course. I allowed the group to go ahead with the idea, and we worked hard on trying to divide the problems in implementing the simulation down to a scope that they could implement. However, the problems with learning the details of programming and debugging coupled with the difficulty they had in developing mathematical models for the simulation stymied them. They made significant progress along some paths, only to be stopped on others.

They then changed their objectives, changing the game to a top-view track racing game. Again they made substantial progress, only to run into problems with movement control and collision detection in their code that they weren't able to beat within a reasonable time.

So they stepped back once more, started with a working codebase (the ballon-popping demo scenario), and began modifying it and adding features. Even though they were weeks behind the other teams at this point, and shorthanded, they made good progress and turned out a good game.

The Art of Clay Pigeons

Art of Clay Pigeons Development Blog

Overall, I'd say this group had the most "educational" experience. As I mentioned, they did solve a lot of problems toward each of their prior goals. Though the process was very frustrating for them, they managed to maintain a good attitude and positively move forward from each failure.

Modularity is Our Friend: Day 3


Another group started out with a very basic idea for a shooter that needed a lot of fleshing out. They also ran into development problems, with collision detection and with hitting a mental limit on data structures. They managed to maintain a central base of working code, however, so their game didn't change as much through the course of development as the Art of Clay Pigeons/Offroad Xtravagaanza team. They began development of several different sets of possible features in parallel, then used the advantages of OO programming to add each to the central codebase, experiment with it, test interactions with other features, and then decide where to go.

They followed a very iterative process and learned to be fairly conservative about connecting ideas with their ability to implement them. They managed to apply some basic data structures to their game, notably Lists. They had other ideas for which I suggested more sophisticated data structures, but they decided they'd rather "limit their risks". Some of the students who worked on this game, "Day 3", have stayed in contact, and I know at least one update has been worked on since school ended, so this game may continue to develop. I know one thing they'd like to do is put one of the lines of work they had near completion that didn't quite make it in by the end of class into the game. So Day 3 may continue to develop:

Day 3

Day 3 Development Blog

Success by Design: Farm Frenzy

The remaining project ended up looking almost exactly like its original design. It was consciously designed as a modification of a classic video game (Pac-Man), and it avoided some of the problems the other teams ran into by sticking with large cells in the playfield. The team did a great job with this, with one of the team working out many of the little details outside of class, then coming in with sheets of layout information on graph paper and pseudocode ready for implementation.

Farm Frenzy, a.k.a. The Purple Piggy Game

Farm Frenzy Development Blog

Results: Positive

I have to say that I'm really pleased with how things turned out. All class members were able to contribute constructively to their team projects, and all teams were able to complete a game that actually runs and get it posted on the Greenfoot Gallery. I had my doubts, especially when one team was halfway through the last class without having yet even gone through the process of exporting their game from Greenfoot, much less posting it online. They rallied, however, and managed to get in under the wire.

Greenfoot worked well for giving students visual feedback on their program work, and it made the class fun and interesting for them. Overall I'd say motivation levels were higher than in my prior classes, in that a higher proportion of students were engaged with developing new ideas and seeking to implement them in code.

Greenfoot didn't prevent me from teaching more sophisticated programming concepts in class, but it did somewhat limit the scope with which I could approach them. Students were willing to follow discussions of the use of data structure objects, but they also wanted to "get back to work", so we weren't able to dig in as deeply in these area as I have with prior classes. We did manage to cover the basics, however, and I didn't see any reluctance to open up the Java API reference, or the API reference for Greenfoot, either. Overall, I'd say that the class moved into using data Objects faster than before, but didn't go as deep or into as broad a range of data structures as in previous classes. They did show that they understood what they were doing when they used Objects and Interfaces like List, though. They were able to deal with types, iterators, and selection of elements. So I'm satisfied that the important lessons were learned.


Problems Encountered

Our problems with implementing ideas in Greenfoot were a mix of things. In part, it was through our collective inexperience with Greenfoot that we didn't always conceive of things in a way congruent with how Greenfoot handles them. In other cases, we ran into problems when trying to implement things in ways that I've used in the past, particularly collision detection, that for whatever reason didn't appear to work in Greenfoot. Greenfoot is well suited for cell-based game models, it is more difficult to implement what might be called "small cell" models with pixel-level movement and control, or something close to it. Small cell models without "terrain" effects, such as space simulations don't seem to be as much of a problem. Other than that, for new programmers it seems best to stick with large cell games, where each player or game object occupies one cell on the playfield, and all interactions are based on occupation of the same cell or adjacent cells.

I had to write a fair bit of code myself outside of class to assist students with solving problems or developing implementations. I'll be writing more code before we start again next year, so that I've got a better handle on what it takes to solve some of the problems that we ran into last year. Especially dealing with collision detection. With this I'll be better able to guide the students in understanding how much work it'll take to implement their ideas, and help them make better decisions on how they design their games.

I expect to write more on my experiences using Greenfoot in class as time goes on, and provide some of the example scenarios I've developed. For now however, I have to say that I've quite happy with how Greenfoot worked in my class and I'm looking forward to using it again next year.

You Can't Argue with the Price (or License)

On top of that, thanks to the fact that Greenfoot is free, it allows me to have students create video games without using one of the commercial instructional development systems that have license fees that come out of our school's limited budget. And in this case the lower cost does not result in a reduction in the value of the product, much the opposite. The commercial systems that have been used by other instructors at our school in the past have no connection to real world programming languages, and the games require the system's runtime package to operate. My student's Greenfoot games, on the other hand, are written with their logic in Java, and are easily packaged for independent distribution as Java executables as well as web distribution.

Thumbs Up

Final word: Greenfoot's good stuff. If you're teaching introductory level computer programming, it's worth giving a try.