6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Fri Nov 22, 2024 9:13 am

All times are UTC




Post new topic Reply to topic  [ 10 posts ] 
Author Message
 Post subject: Fignition
PostPosted: Fri Jul 15, 2011 12:32 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 9:02 pm
Posts: 1748
Location: Sacramento, CA
I know this is a liitle outside of 6502-related information, but I think this is a neat package and wanted to share a little obout it.

Figntion uses an AVR microcontroller to run a close derivitave of FIG Forth. It is USB powered and has text video output (PAL right now but the author told me NTSC is easy to provide). Forth code is run from a serial RAM yet the author claims the overall speed is better than most 8-bit computers of the 70's & early 80's.

He will be opening up the source code in the near future, which should be interesting to see as well.

Here is a link to the website:
http://sites.google.com/site/libby8dev/fignition

Daryl


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Jul 15, 2011 1:10 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10985
Location: England
A nice machine, for only 20 pounds, and as he says, it's self-hosted - thanks for the link.

(Could be on-topic, if it runs a 6502 emulator!)

Hmm... that really is an 8-key input device - I'd supposed perhaps a USB keyboard might be usable, but no, it's an ingenious chorded input system:

Image

Reading on, I see you can also save source files to the device by treating it as USB storage.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Jul 15, 2011 7:36 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8543
Location: Southern California
BigEd wrote:
Hmm... that really is an 8-key input device - I'd supposed perhaps a USB keyboard might be usable, but no, it's an ingenious chorded input system:

Over the years, I have tried to devise minimal keyboards that could do everything the big ones can, just with a speed-for-size tradeoff, and this may be as good as any. Fignition's description could use some improvement though.

For one-handed typing, and fast--40wpm with practice--there's the patented FrogPad but it's not as small, and it appears that such efficiency depends a lot of having the right shape of keys around the outside and a light touch. It would be nice if it would catch on as a standard.
Image
I guess if you can plug in a standard PC keyboard, you could plug in a FrogPad.

Another thing I did for a product in the 80's was kind of like the old Dymo tape label makers where you turned the dial to the letter you wanted and squeezed the handle to press the letter into the tape. The system had a 2-bit gray-code rotary switch and to pushbuttons: one button for enter/yes/select, the other for no/cancel/exit, and the pair pushed together for help/edit. When you're entering text or numbers, the cursor character would show which one you're on as you turn the rotary switch, and when you get the one you want, you press the left button. Choices included cursor movements, special characters, and so on. It was more intuitive, but Fignition's system would probably be a lot faster once you learn it. I wish I had already gotten into Forth when I did that project. It would have made a huge improvement in development and debugging time, without any siginificant runtime speed penalty.

Otherwise, I'm not so sure a Morse code key would be any worse than the above, or maybe have a pair of keys for an iambic Morse keyer which can go much faster and probably with simpler software than just pounding it out like I did when I was active on amateur radio with a straight key. I was able to send at 15-20wpm (and receive faster). The world record is about 75wpm, a lot faster than most people can type. O.T. notes: #1. Morse is generally quite a bit faster than the number says, because of various codes and abreviations and leaving out letters as in text-messaging. #2. With a straight key, you can recognize different people's "voices" as you tune across a band, because no two do it exactly alike, even if they've trained to do it with near-perfect timing (as I did). #3. For people who are "fluent" in Morse, it's not as impersonal as you might think. You can tell when they're laughing and so on, better than email. #4. And, if the equipment is full-break-in-capable, you can interrupt each other at any time instead of waiting for the "Over!" at the end of a transmission, because you're receiving between individual letters and between the dits and dahs of a single letter.


Top
 Profile  
Reply with quote  
 Post subject: FIGnition
PostPosted: Mon Oct 17, 2011 9:27 am 
Offline

Joined: Mon Oct 17, 2011 7:50 am
Posts: 33
Hi folks,

I noticed your postings, so I thought I'd add a response.

Firstly, a 6502 connection

Someone said it'd be on-topic if I it had a 6502 emulator. I toyed quite a bit with a 40-pin AVR-based full-speed 6502 emulator in the year before I developed FIGnition, because I wanted to hack it into the case of a Smith-Corona SL470:

http://oneweekwonder.blogspot.com/2010/ ... cking.html

The AVR 6502 emulator wasn't a pin-for-pin realisation of a 6502, but a combination of an realisation which could access external memory; a 6502 MCU with a built-in User port and built-in EEPROM Bootstrap ROM and a 6502 with access to the AVR's hardware features. Well, you can download it from here and read the comments. It assembles with the AVRA assembler.

https://sites.google.com/site/libby8dev ... ects=0&d=1

It assembles, but isn't tested at all. Feel free to use it, debug it etc, though please credit the source.

Choral Keyboards


The FIGnition keyboard has attracted more critical acclaim than any other aspect of FIGnition... with more criticism than acclaim admittedly :wink:

I'm aware of the FrogPad, it's good and I once considered buying one - I wish they still had the tactile one on their website, but the store only seems to show the Magic Frogpad :? . There's quite a history of chordal keypads from the old Xerox alto chordal keypad:

http://research.microsoft.com/en-us/um/ ... .aspx?id=7

Then there's the Microwriter of course, which for me is the definitive chordal. There was also the fastap keypad:

http://news.bbc.co.uk/1/hi/technology/3123086.stm

which relied on using the cross-points between keys as an alternate key pad.

I had a number of design constraints if I wanted to produce a viable one of my own:

    • I couldn't risk falling foul of anyone's patents.
    • I couldn't afford many keys on the keypad (that is, it would add too much to the final product cost IMO).
    • I couldn't afford a full Sinclair-style membrane keypad for the same reason.
    • I wanted to retain some proportionality in the design.
    • I didn't want to use a keyboard protocol, e.g. PS/2, because FIGnition is really about understanding principles and although PS/2 keyboard protocol has a practical value, it embodies no long-term principles outside of serial comms.
    • I wanted to leverage mobile phone layouts to make it easier to learn.


My result, the FIGnition's keypad: let's call it the FIGgyPad, simply extends the concept of applying shift to every key on the keypad combined with a layout reminiscent of mobile phones. Easy to learn, simple to build, simple to write a driver for; cheap, practical and unpatentable. The keypad driver is in the currently released FIGnition source code on GitHub and both the hardware design and software are free to use and always will be (though copying the driver means crediting the author).

I take your point about the description and I'll think about how it can be better described, unless someone beats me to it.

The main thing

I've been interested in Microcontroller-based computers for quite a while, mostly because I'm interested in designing educational computers that can be built and understood and it's not fair to make newbies solder SMD devices. Unfortunately, it's actually harder to develop even 80s style micros today, because 80s components are harder to obtain and it's worse if you consider customer components (e.g. ANTIC / SID/ other early ULAs).

And even if you did; these kinds of machines are more of a minority interest than in the 80s so one has to wrestle with how to motivate people. In my mind then, using the MCU to directly implement the computer rather than emulating another architecture is my current compromise / refinement over projects like Libby8 and/or a 65AT2 system.

-cheers from julz


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Oct 18, 2011 2:46 pm 
Offline
User avatar

Joined: Fri Dec 11, 2009 3:50 pm
Posts: 3367
Location: Ontario, Canada
Welcome, Julian -- it's nice of you to drop in. Your post jumps between a few different topics, which I'll deal with in no particular order. :)

Quote:
I toyed quite a bit with a 40-pin AVR-based full-speed 6502 emulator [...] because I wanted to hack it into the case of a Smith-Corona SL470
I like the proposed hack, fooling an electronic typewriter into operating as printer. In fact I contemplated such a project years ago myself. But my question is, why would you choose a 6502 emulator for the job? (I understand you wanted to simulate key presses on the keyboard matrix.)

As for Fignition, congratulations on a thoroughly charming project! The thing is no mean design achievement, either, despite -- or should I say because of -- its extreme simplicity! Speaking for myself, I have no objection to it being mentioned -- in the FORTH section -- of this albeit 6502 based forum. BTW you might also consider a listing on http://forthfreak.net although I don't know how active that site is. Perhaps some other 6502.orgers can suggest other venues for you to promote the project.

How are you coming along with the goal of offering NTSC video (as an alternative to PAL)? It would be great to be able to deploy the device in North America!

Finally, what are the specifications for I/O? Obviously you have video and the keypad, but how hard or easy would it be to connect additional devices (perhaps using I2C or some other serial technique)?

Cheers,

Jeff


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Oct 18, 2011 3:45 pm 
Offline

Joined: Mon Oct 17, 2011 7:50 am
Posts: 33
Hi Jeff,

Thanks for the reply!

Quote:
why would you choose a 6502 emulator for the job?


Quite simple really, it's not so easy to get hold of new 6502s these days, they're not available from my normal electronics outlets in the UK: Rapid, Farnell and RS so a 6502 is a good choice from a digital preservation point of view, because *everyone* should have access to a 6502 ;-) . Also a 6502 has some benefits over emulating a Z80, because of the overhead of the interpretation loop. A 65AT2 should emulate a 2MHz 6502 (not cycle accurate, but almost never slower), but only a 2.5 to 3MHz Z80. And of course, it only has to deal with 1 byte op-codes, etc.

Quote:
I have no objection to it being mentioned -- in the FORTH section --


Cool! I only came across the discussion recently, so I thought I'd chip in.

Quote:
How are you coming along with the goal of offering NTSC video


I have experimental NTSC firmware and a guy in the US has just recently offered to test it, so I should be making some progress soon on that. I've also had an enquiry from another legendary 6502.org SBC designer back in July and I've sent a couple to other NTSC region people, but I haven't received any feedback on their progress. The firmware's upgradable via the web site so in theory no-one would lose out, but I'm not going to actively announce US availability until NTSC is debugged because I don't want to disappoint people who weren't already prepared to go through that cycle - for them it'd be like buying a machine that simply didn't work.

Quote:
would it be to connect additional devices (perhaps using I2C or some other serial technique)?


It should be possible to connect certain SPI devices as I've written a minimal SPI driver definition, and some FIGnition owners on the FIGnition google group have experimented with I2C (which should work out of the box), but not as yet with real success. I'd want to leave that project to users though I'm happy to update the firmware if I've made an error that prevents it working of course.

-Cheers from julz

Also, thanks for the Forthfreak.net link, I'll check it out.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Oct 18, 2011 6:54 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 9:02 pm
Posts: 1748
Location: Sacramento, CA
Snial wrote:
...I've also had an enquiry from another legendary 6502.org SBC designer back in July and I've sent a couple to other NTSC region people, but I haven't received any feedback on their progress.


I have not begun any testing as of yet. After reading about this and a few other projects, I decided to see what Forth was all about. From what I've seen so far, I am motivated to dig further. I am still searching however for that "killer app" to use Forth on.

As for Fignition, Julian told be a few weeks ago that he was starting the open-source process and I have looked at some of his code. My big problem is finding time to devote to a new project.

I at least wanted to let others know that Fignition existed and help promote Julian's efforts.

Daryl


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Oct 18, 2011 7:09 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8543
Location: Southern California
Quote:
I am still searching however for that "killer app" to use Forth on.

That would be almost anything.

Quote:
it's not so easy to get hold of new 6502s these days, they're not available from my normal electronics outlets in the UK: Rapid, Farnell and RS so a 6502 is a good choice from a digital preservation point of view, because *everyone* should have access to a 6502 Wink . Also a 6502 has some benefits over emulating a Z80, because of the overhead of the interpretation loop. A 65AT2 should emulate a 2MHz 6502 (not cycle accurate, but almost never slower),

Take a look at the "65xx parts sources" sticky topic in the "General Discussions" area. Current-production 65c02's and 816's are becoming more widely available, and are conservatively rated for a minimum of 14MHz.


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Tue Oct 18, 2011 7:09 pm 
Offline

Joined: Sun May 08, 2011 7:39 am
Posts: 104
Hey Julian

Still have not built my Figgy.. time, time, time. But I do have a Microwriter - and it still works...

See you on the Google Figgy Group!

Cheers

JonB


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Sat Dec 03, 2011 6:38 pm 
Offline

Joined: Mon Oct 17, 2011 7:50 am
Posts: 33
Dr Jefyll wrote:
Welcome, Julian -- it's nice of you to drop in..

I like the proposed hack, fooling an electronic typewriter into operating as printer. In fact I contemplated such a project years ago myself. But my question is, why would you choose a 6502 emulator for the job?


I'm sure you noticed that by the time we got into the 90s, electronic typewriters were basically daisywheel printers with built-in keyboards. Naturally I guess the printer companies wanted to market models as both typewriters and printers.

I found this printer was actually controlled by an Intel 80C52 and its serial Tx/Rx pins were unconnected, i.e. there's tracks coming from them that lead to vias; so I figured this was one of those kinds of machines. I chose a 6502 so that I could build a sort-of AIM-65 type computer, a pre-CRT machine you'd attach to a TTY.

Dr Jefyll wrote:
As for Fignition, congratulations on a thoroughly charming project!... http://forthfreak.net


Thanks, simplification is a challenge - I'm currently trying to get Bitmapped video working properly on it - using the Microchip SPI RAM as the frame-buffer. There's a few glitches still, but stay tuned!!!!

Dr Jefyll wrote:
How are you coming along with the goal of offering NTSC video


Well this is the news, a US customer bought one, risked the experimental firmware and hey-presto - it worked... first time!!! That never happens eh? Video is a 4us to the right, but that's because I had forgotten to correct the left margin from its test value!

So FIGnition NTSC is now on the market :-)

-cheers from julz


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 10 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: