I want to belive you and yet my experience tells me that there's something fishy here.
Run-from-flash on a cache-less ARM is definitely possible but also definitely very slow. It may be OK for driving a modem, but most likely it will not be OK for any real crypto application.
We're talking a machine designed to exchange transactions that weigh in at between 0.5 and 2 kilobytes. They do that just fine.
As far as I know, the SSL and TCP/IP implementations sold by Verifone (licensed from Windriver?) are seriously crippled by implementing only minimal subsets of the full functionality, suitable to run only on LANs or WLANs with low packet loss.
That might be true, but they tend to work fine in practice. Most of the messages exchanged by these devices fit within a single Ethernet frame. They are designed to talk to one host (e.g. Visa/Mastercard) over the internet and they clearly do that just fine. They don't need a gamut of protocols because they don't need to talk to lots of hosts with a wide array of different capabilities like, say, web browsers do.
I believe the WiFi units they sell (Vx610 with a pluggable module) is based on having a third-party radio with its own IP stack on the radio itself, and it is just attached via a serial-like connection.
In short, they do fine.
I think they also have Linux-based products as well. I've never developed for them.
You might be aware my experience with these is that I sell payroll timeclock services on them. We actually have another box with similar characteristics that runs Linux (magstripe reader, 128x64 mono display), and we sell a ton of them as timeclocks. My timeclock app runs on both VeriFone and these Linux boxes, it's just a different build target. So if I had an itch for a little more juice, it's just a matter of recompiling for the other hardware. We sell more Linux timeclocks not because they're Linux, but because they look more like timeclocks and are easier to hang on the wall. On the other hand, VeriFone boxes would make better Bitcoin POS machines because they have a built-in printer, that's sort of important.
I'm interested in making the Linux timeclock box available to others, because anyone can develop for them. And if someone can contribute to the Bitcoin codebase that runs on the Linux timeclock, it should have no problem compiling for the bankcard machines as well.
If the whole project get from the start rearchitectured to dumb-wimpy-client/smart-ruddy-server that would increase the chances of achieving something that is both deliverable and maintainable in case of the future need for modifications.
I'm hoping to just give away the code for any progress I make on this. I believe this is what it'll take for average businesses to care about Bitcoin.
Admittently I don't have an actual experience with Verifone's hardware, but we had to deal with something very similar. In the end the acceptable and secure solution required about 5-15 seconds wait to respond to the keypresses. And this was after immense time spent optimizing the C code with hand-crafted assembly.
I don't like unresponsive UIs and wouldn't use this platform if that were the expected experience. My timeclock app is very responsive and I would expect that any sort of bitcoin app would be the same.