6502.org Forum  Projects  Code  Documents  Tools  Forum
It is currently Sun Sep 29, 2024 1:27 pm

All times are UTC




Post new topic Reply to topic  [ 97 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7  Next
Author Message
PostPosted: Thu Sep 27, 2012 10:21 pm 
Offline

Joined: Sat Dec 13, 2003 3:37 pm
Posts: 1004
GARTHWILSON wrote:
Actually an LCD and the keyboard or a small keypad can be connected directly to a VIA, with no discrete logic.

Sure, but I was also considering trying to keep component count and costs down as well.
GARTHWILSON wrote:
The issue there is not really the clock frequency, but rather the rise (and fall) times of the signals. The clock (φ2) is the main problem there. Using solderless breadboard can keep it from working at any clock speed (even 1Hz) if the rise times are too fast. If you stick to 74HC and 1MHz parts so the rise times are slow, it will work. Otherwise the ringing following each rising and falling edge on the clock line, caused by the inductances of the long curved wires working with the stray capacitances, will be strong enough to change states at inputs, and make parts of the processor and I/O ICs try to go ahead with the next cycle before the required set-up and hold and internal-operation times have been met.

Obviously stuff I don't know anything about. How does a wire wrap version avoid this problem?
GARTHWILSON wrote:
Fortunately, experimentation requires changing very few wires. The address and data buses still go to all the same places, so those probably wouldn't change. Much of what you connect the VIAs' I/O pins to can share VIA pins, so you don't have to disconnect them from one thing to connect to another. For example, my workbench computer has A/D and D/A converters hanging off the I/O pins of one of the VIAs, but when I'm not using the converters, I can use the same I/O bits for other things, without disconnecting the converters. Also, at least one of the three 65c51 ACIAs on that board will probably never be used again, but it doesn't hurt anything to leave it (or at least the empty socket) there.

If by experimentation you're talking about simply talking to other things using the VIAs, then sure. If you're talking about doing something to the actual CPU (add memory, add decode logic, etc.), then more surgery is involved.

GARTHWILSON wrote:
Quote:
I know some some might find using a USB port blasphemy and I understand the sentiments. On the other hand, many computers these days don't have serial port.

I don't have any problem with using a USB-to-RS232 adapter at the PC end, but I don't like the idea of trying to put USB on your actual creation. I understand that the USB spec is so complex that the programming to run it would consume almost the entire 6502 memory map. (That info comes from Samuel Falvo.) There are ICs that do most of it for you that are interfaced through SPI, and I have mixed feelings on that. SPI is great.

Yea, I completely agree with this. When I say serial port I mean something like a generic serial port and students using (USB) adapters to talk to it. Zero reason to add USB to the project board itself.


Top
 Profile  
Reply with quote  
PostPosted: Thu Sep 27, 2012 10:40 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
Quote:
Obviously stuff I don't know anything about. How does a wire wrap version avoid this problem?

WW allows you to put the parts closer together and to make the connecting wires shorter and nearly straight, making a big reduction in the inductance. You can also get perfboard for WW projects with ground plane, or even planes on both sides so one can be for power. The solderless breadboards' added capacitance between rows is mostly eliminated too.

Quote:
If by experimentation you're talking about simply talking to other things using the VIAs, then sure. If you're talking about doing something to the actual CPU (add memory, add decode logic, etc.), then more surgery is involved.

In most cases you can add those things without removing anything. If you do need to change address decoding, it's usually pretty minor. My 6502 primer's WW page (which I just added a little bit to) covers how to daisychain for easiest modification if it becomes necessary, and covers re-wrapping wire ends you removed for changes or corrections. If I had the room on my workbench computer, I could still add four more I/O ICs with no additional decoding logic. Since the board is totally full (such that from the top, the board material itself is only visible at the very edges of the board), I added a mezzanine board which is now about 1/3 full.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 2:48 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
8BIT wrote:
BDD and all,

While I found the Exar 68C92's performance, bus compatibility, and configuration very easy and reliable, I concede that it is harder to come by and cost a little more. That said, the 26C92's from NXP are less expensive and more readily available so are a better choice for the hobbyist and/or kit manufacturer.

Daryl

As Daryl is saying, it almost always comes down to cost and availability. Incidentally, NXP has continued to produce a good variety of glue logic devices that are hobby-friendly, including 74ABT logic for the speed freaks among us. :lol:

By definition, any application of a non-65xx device to the 65xx bus is going to entail some adaptation work, something to which I'm sure Daryl will attest. This is actually a good thing in a kit meant to educate, as it teaches the experimenter how to analyze timing and signal states, leading to a more robust understanding of the circuit. While doing so wasn't my primary goal when I set out to build POC, the time expended in timing and state analysis in adapting the 2692 and the Dallas watchdog (also an Intel bus-friendly device)was well-spent. I can see circuit behavior aspects much more clearly now and quickly spot ambiguous situations. Achieving that level of understanding, I think, makes a DYI education kit well worth the money.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 2:57 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
GARTHWILSON wrote:
I don't have any problem with using a USB-to-RS232 adapter at the PC end, but I don't like the idea of trying to put USB on your actual creation. I understand that the USB spec is so complex that the programming to run it would consume almost the entire 6502 memory map.

I'm in complete agreement with Garth on this. A DYI kit meant to teach the digital basics should keep the complexity down to a level that will not discourage the experimenter. USB is complicated and bulky...so much so I don't want to be bothered with it, other than to plug in my camera to transfer pictures to my Linux box. A standard TIA-232 serial port is readily implemented on a basic 65xx system, either through a compatible or adaptable ACIA, or by bit-bangiing on a 65C22. TIA-232 is so ingrained into computer design that it will be around well after I have been converted into worm and bug food. USB, by its nature, will remain a narrow standard that does not satisfy the need for heterogeneous connectivity.

Quote:
(That info comes from Samuel Falvo.)

If Samuel doesn't know, it's probably not worth knowing.

Quote:
There are ICs that do most of it for you that are interfaced through SPI, and I have mixed feelings on that. SPI is great.

The 16-pin MAX3100 UART is nice, having SPI and 8-byte transmit and receive buffers. The MAX3110 is the same thing with the RS-232 line drivers and receivers built in.

My only quibble with going that route in a DYI kit is the need to implement SPI, which is hardly a trivial exercise in a basic 6502 system. "Traditional" parallel bus ACIAs (or using the 65C22 as one) are much more 65xx bus-friendly.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 3:48 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 9:02 pm
Posts: 1738
Location: Sacramento, CA
BigDumbDinosaur wrote:
My only quibble with going that route in a DYI kit is the need to implement SPI, which is hardly a trivial exercise in a basic 6502 system. "Traditional" parallel bus ACIAs (or using the 65C22 as one) are much more 65xx bus-friendly.


Ah, but don't forget my 65SPI interface. It handles all of the SPI shifting and can use status polling or interrupts to monitor progress. I found it quite easy to implement the ENC28J60 Ethernet module (the TCP/IP stack was a little harder). I have also used it for a few other devices. While it is housed in a CPLD that requires one-time programming, I have an open offer to program user-supplied chips for anyone who asks - free of charge, other than the return postage. The 44-pin PLCC does not require a lot of board space and there is a little room (and a few I/O pins) to add some extra glue logic too. I can help with that too.

OK, I'll shut up now :)

Daryl

_________________
Please visit my website -> https://sbc.rictor.org/


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 4:36 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
8BIT wrote:
BigDumbDinosaur wrote:
My only quibble with going that route in a DYI kit is the need to implement SPI, which is hardly a trivial exercise in a basic 6502 system. "Traditional" parallel bus ACIAs (or using the 65C22 as one) are much more 65xx bus-friendly.

Ah, but don't forget my 65SPI interface. It handles all of the SPI shifting and can use status polling or interrupts to monitor progress. I found it quite easy to implement the ENC28J60 Ethernet module (the TCP/IP stack was a little harder).

I didn't forget about it, and certainly would recommend it for use in any design where SPI is desired. In a more advance unit, SPI can allow the builder to take advantage of a lot of inexpensive devices that provide a variety of functionality, the Ethernet adapter being a good example.

My concern here is that "creeping featurism" will eventually produce something akin to a Raspberry Pi or Arduino, rather than a basic 65xx unit that won't intimidate an experimenter. The idea of simple functionality is something that a basic DYI kit should promote. As the 65xx bus is quite adaptable, it should be possible to develop something that the beginner can get up and running with a reasonable time investment, yet be able to add to as time goes on. The patch board approach can provide that sort of balance if speed constraints are acceptable (slower logic means less trouble with unavoidable reactive effects caused by snarky wiring—see Garth's comments above). That said, a kit based on wire-wrap or a PCB would allow for better bus conditions and thus could include an "expansion port," allowing for the future attachment of "things" as the experimenter gets more comfortable with the device.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Last edited by BigDumbDinosaur on Fri Sep 28, 2012 4:48 am, edited 1 time in total.

Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 4:44 am 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
Quote:
TIA-232 is so ingrained into computer design that it will be around well after I have been converted into worm and bug food.

Yep, it's been around for about 50 years, and will continue in industrial equipment for some time to come. Remember how long PCMCIA was around? It partially got replaced with CF cards, which mostly got replaced with SD cards. How about any given size of floppy disc? And zip discs? Even the ubiquitous cassette didn't last nearly as long as RS-232. How about DAT? Even Zigbee got pushed out by Bluetooth. And I'm wondering how long USB will last.

Quote:
My only quibble with going that route in a DYI kit is the need to implement SPI, which is hardly a trivial exercise in a basic 6502 system. "Traditional" parallel bus ACIAs (or using the 65C22 as one) are much more 65xx bus-friendly.

SPI is very easy to bit-bang with a VIA (I have code here); but if you don't want to go that route, you can use Daryl's 65SPI IC which is a "traditional" 65xx-bus-friendly parallel-bus part. See https://sbc.rictor.org/65spi2.html .

The problem with creaping featurism is when it keeps you from ever finishing the project and having something useful. Addressing that was part of the purpose of 65SIB, the 6502.org serial interface bus which basically took SPI and extended it in several directions at once, making it more flexible. I added a 65SIB port to my workbench computer, connected to VIAs, after there was no room left to put a 65SPI chip on it. (Do not confuse 65SIB (the bus) with 65SPI (the chip). They're related but not the same thing.) Now lots of things can be added externally, whether instrumentation, mass storage, displays, whatever.

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 4:58 am 
Offline
User avatar

Joined: Thu May 28, 2009 9:46 pm
Posts: 8406
Location: Midwestern USA
GARTHWILSON wrote:
Quote:
TIA-232 is so ingrained into computer design that it will be around well after I have been converted into worm and bug food.

Yep, it's been around for about 50 years, and will continue in industrial equipment for some time to come...How about DAT?

DAT in its originally intended application had a very short lifespan, but its spirit continues in DDS tape drives (got one in both servers here in my office).

Quote:
Even Zigbee got pushed out by Bluetooth. And I'm wondering how long USB will last.

USB is a "consumer-friendly" interface, in that a trained monkey can use it. So I suspect it'll stick around for a while in cameras, low-end printers and scanners, thumb drives, etc. However, USB lacks characteristics needed to make truly heterogeneous connections, so it will never replace TIA-232/422/485, and certainly will never achieve connectivity available via Ethernet. Also, there's the matter of limited cable length...

Quote:
The problem with creaping featurism is when it keeps you from ever finishing the project and having something useful.

My point exactly.

_________________
x86?  We ain't got no x86.  We don't NEED no stinking x86!


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 9:18 am 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10940
Location: England
Another small SBC design is Halldor's - the site has been intermittently offline but is up at present.
http://www.fririki.net/6502/basic_design.html
It would be easy and desirable to substitute a clock can, unless explicitly teaching the workings of a crystal oscillator.
He's using DIL headers and ribbon cable for expansion, which will be OK for very short distances. It wouldn't be difficult to swap in alternate grounds and the necessary extra headers, if that was a concern.


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 10:16 am 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Dajgoro wrote:
For the usb i think that is best to leave it to the usb to serial adapter. On my system i have a adapter pcb that i got from ebay, and it is connected to the mc6850, and since that the mc6850 ca go up to 1 megabit, it can be very fast. Also drivers are trivial, for XP i had to install the cp2102 drivers, and it worked with no issues, and i think that newer os have built in drivers for the cp2102.


Exactly. The FTDI serial to USB chip does not require any programming and the driver works in any platform.


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 12:42 pm 
Offline

Joined: Wed May 20, 2009 1:06 pm
Posts: 491
BigDumbDinosaur wrote:
My concern here is that "creeping featurism" will eventually produce something akin to a Raspberry Pi or Arduino, rather than a basic 65xx unit that won't intimidate an experimenter. The idea of simple functionality is something that a basic DYI kit should promote. As the 65xx bus is quite adaptable, it should be possible to develop something that the beginner can get up and running with a reasonable time investment, yet be able to add to as time goes on.


I could have invested in Apatco's computer but I chose the Raspberry Pi and I ordered one. The reason is partly financial because $35 vs $180 and 12 MHZ vs 700 Mhz (and overclocking) and they are so cheap that I can put five backups in my closet for years to come. A reason I went this direction is because they have a magazine and I don't think the 6502 has one. The Raspberry Pi is selling out and there are many stores. The Raspberry Pi has all kinds of engineers working for it and I can buy 4 inch or 7 inch NTSC screens for it, there are cases available and I can connect it to VGA and HDMI. I can connect it to ethernet and I can put in a Wifi b,g, n dongle. It can run several languages and has become the new social and learning computer in so many ways. It can even accept a 16 GB SD card and theoretically it might be able to do 32 GB on a card. Element 14 is selling a Gert board and Adafruit sells a Pi Cobbler for breadboarding. They are basically doing everything to make it succeed and they are also doing it to teach the next generation of kids how to program and use computers. Look at all the good they are doing. All these devices are available because of people willing to go the extra mile and let the Raspberry Pi become open source and it becomes low cost as a result because if everyone charged $100 or $200 for their part, this computer wouldn't sell out..

The other trend is that hardware is dead:

http://venturebeat.com/2012/09/15/hardware-is-dead/

When you can get an A-Pad from China for $35 that can do everything and when hardware companies aren't making much of a profit on it, they consider there to be no money in hardware.


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 4:37 pm 
Offline

Joined: Wed Sep 19, 2012 6:19 pm
Posts: 122
Location: England
Arduino is the same. I've always been interested in electronics but never had the means and the time to get started with it. Once I bought my Arduino, I started learning Java and Python, learnt to make custom PCB and made my own UV exposure unit and a bubble etch tank from a Tupperware milk jug. I've even learnt to solder SMD and using multiplexers and Bluetooth modems. Later bought an FPGA dev board, then learnt about analog electronics, etc. I don't think I would have got into it without that initial 'push'. I don't think I could have afforded programmers and learn C just to be able to make some LEDs blink.


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 5:50 pm 
Offline
User avatar

Joined: Fri Aug 30, 2002 1:09 am
Posts: 8521
Location: Southern California
Quote:
A reason I went this direction is because they have a magazine and I don't think the 6502 has one.

6502.org is that magazine. Ed keeps bringing in articles, and the members write articles and post them on their websites which are linked to 6502.org. There are a gazillion links to articles, code, projects, tutorials, etc. here, and, via the forum, almost immediate help.

Quote:
The other trend is that hardware is dead:

http://venturebeat.com/2012/09/15/hardware-is-dead/

That article is a strictly consumer point of view, with no thought of industrial or workbench or hobby applications. The A-Pad he got for $45 will be in the land fill in two years, maybe six months. If it breaks down, there will be no support whatsoever. If you want to do your own thing with it, there will be no documentation, let alone complete documentation, of what's inside. Even if there were, it would take much longer to learn it than the product will be available. For someone who wants to learn computers (after all, this is the "SBC kit for evaluation" topic), they have no hope of getting down-to-the-metal control of the computer, including microsecond timing of anything, and it has absolutely no general-purpose I/O bits.

I use a PC and occasionally a digital camera with USB, but when I do, I'm basically an appliance operator. I have a flip phone, but I usually forget to take it with me. That tells you how important it is to me. One time I dropped it on the asphalt and kind of hoped it would be broken so I wouldn't have to carry it anymore. I neither have, nor want, an i-Anything, GPS, or MP3 player, and our TV has been turned on only once (for two minutes) since the Olympics. Obviously I'm still nuts about what I can do with the 6502 on the workbench in my work though. :D

_________________
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 7:01 pm 
Offline

Joined: Sat Dec 13, 2003 3:37 pm
Posts: 1004
With the sophistication of modern electronics combined with the ubiquitous availability of mature and robust software, for many it it far easier to bolt stuff together from modules than it is to work things up from scratch. For many cases it's simply easier to use a SoC and wire that to a battery and the blinky lights you're trying to drive.

Theory is less and less important when the off the shelf bricks do the job well enough for your applications.

Raspberry Pi is great for those who want to make a self hosting blinky light platform. Wire the lights and motors and sensors to the board, and poke and prod using your favorite scripting language, enabling a nice, zero turn around dev environment for, effectively, the price of 2 movie tickets. It is fabulously cheap.

Arduino et al is better for those trying to install it on something else. It's not self hosting, you need to build, download, execute, rinse, repeat, but the community around it is nice and high level, artists and "makers" rather than in the trench engineers. Super accessible, instant robots, etc. Arduino helps make the entire field less intimidating.

The SBC project would be interesting, but it's becoming less and less necessary for those wanting to dabble in this field. Those who want to make it a profession will pick this and much much more up during their engineering studies.

A similar phenom is happening in software, where folks stitch together libraries written by others available freely on the internet rather than implementing the details themselves, much less understanding the details of what or how the libraries do what they do. This continues up to the point of not understanding computer architecture, algorithms, data structures, etc.

Through wide availability of libraries, and the truly amazing performance of systems today that can "cover" for bad decisions, folks are finding success much easier with less understanding than has been necessary before.

This is why it is so important to understand when undertaking a project why you are doing it. If you just want to make blinky lights, a 6502 SBC is the long way around to get there today. If you want to understand 6502 architecture and programming, there's a zillion simulators out there you can use. If you want to perfect your wire wrap technique, perhaps an SBC project is the thing for you.


Top
 Profile  
Reply with quote  
PostPosted: Fri Sep 28, 2012 7:49 pm 
Offline
User avatar

Joined: Thu Dec 11, 2008 1:28 pm
Posts: 10940
Location: England
Of the things you mention, I think only the SBC tells you about busses and address decoding.


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 97 posts ]  Go to page Previous  1, 2, 3, 4, 5, 6, 7  Next

All times are UTC


Who is online

Users browsing this forum: No registered users and 31 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: