FPGA isn't 'hardware emulation'. As the FPGA logic gates are arranged by firmware into the same configuration as eg a 6502, the FPGA IS internally a 6502 processor.
@TheTurnipKing
3 жыл бұрын
@@another3997 It needs to be clearly distinguished: In general terms, an emulator is another processor performing a simulation of being another processor. An FPGA is, at the gate level, a 6502. There are differences (the cost difference is substantial!), but not nessicarily something the casual user would see.
@andrewlecouteurbisson7217
3 жыл бұрын
To be fair, the FPGA implementation is not remotely the same as a 6502. At best it implements similar logical equations and timing. The way in which the logic is realised is very different. The 6502 also has a two phase clock which is not realisable in FPGA. That said, it is possible to emulate the external behaviour and timing of a real 6502 to a high degree of accuracy.
@tebes11
3 жыл бұрын
@@another3997 no there's no emulation going at any level
@deang5622
Жыл бұрын
Technically it is not emulation in the traditional meaning of the word but it is also not a 6502. It's a digital circuit which is functionally equivalent to the 6502. You could argue it is a form of emulation because it is reproducing the behaviour of a 6502 but not actually using the 6502 device itself. And the hardware description language used to implement the functionality is not a programming language. It's a hardware description language. It isn't a sequence of instructions like a programming language. The only thing it has in common to a programming language is that both are written in textual form.
@billc.riemers3245
3 жыл бұрын
When talking about 8 bit processors there are actually two numbers to be concerned with. Data width, and address width. Most of the examples you gave of historical machines have a address width of 16 bits. But many 8 bit processors were actually more of hybrid processors. Like the 6809E. It was classified as a 8 bit processor. But it had a couple of 16 bit registers and could do limited 16 bit processing. This made it suitable for OS-9, which was a unix like operating system often used in very expensive real time systems like fastbus crates. In fact for real time processing the 6809 based hardware remained better suited for uses at CERN than the newer hardware components available in the early 90's...
@MichaelRBrown-lh6kn
3 жыл бұрын
When talking about processors, the numbers we are concerned with are the data bus size and the size of the internal registers. NOT the address bus size. "hybrid" processors have different data bus and internal register sizes. Thus a 6502, 6800, 8080, and z80 are all 8-bit processors as they have an 8 bit data bus and 8 bit internal registers. The 6809 and the 8088 are 8/16 processors as they have 8 bit data buses, but 16 bit internal registers. The 8086 is 16 bit, the 68000 is 16/32, but later chips were often 32 bit. This has been how we call them since at least the 70s or 80s.
@billc.riemers3245
3 жыл бұрын
@@MichaelRBrown-lh6kn Yes. It it is nice to clearify exactly what type of 8 bit architecture you are talking about. As about the only reason I can think of for using an 8 bit processor is to run ancient software natively. Even smart light bulbs now days use 32 bit processors... I imagine eventually when they start putting processors on RFID chips they'll have more than 8 bits too. Really any old software I have would need that 16 bit address bus... Not that I'm likely to ever try running it again on a non-emulated platform. It is just an interesting what if I really wanted to type question.
@davidg1830
Жыл бұрын
Adrress size has nothing to do. You forget most important: ALU (arithmetic-logic unit) wide. The "rule" (not a law) to determine bit with would be something like this: 1st/ Internal data bus. This is mandatory. For the next two points, only one would be needed. 2nd/ Register size (at least equal to 1/). If there are bigger registers that doesn't qualify if it has to operate on them on more than a pass. 3th/ ALU width. Finally considering a CPU is x-bit size is a marketing and habit practice, not a scientific-exact one For example Zilog Z80 is 8-bit because its internal bus is 8-bit wide (so on for external), it has 8-bit registers and can use some 16 bits registers but when it operate on them it takes like double time (two passes, so no 16-bit operation).Surprising a few years ago a lot of us learned Z80 ALU was 4-bit wide. I think in 80's near all of us were thinking its ALU was 8-bit wide. Motorola 68000 is a 16-bit CPU because although it has 32 bit registers, its internal (and external) data busses are 16-bit, and its ALU is 16-bit. To add 32-bit data it needs double time, because it is donde on two steps, each one 16-bit. Motorola named it 16/32 bits because althougth it is a 16-bit CPU it implements a 32-bit ISA. Really 68020 is 32-bit. For extreme example there is a very special HP CPU called Saturn (used in HP-71 and later derivatives in a lot of old good HP calculators, for example on wonderful HP-48 series): it has some 64-bit data registers, 20-bit address registers (in fact it can address directly, in lineal memory, 1 Meganibble memory, i.e. 512 Kbytes, something an Intel 8086 can't do: it can only address in lineal way 64 Kbytes) but it is a 4-bit CPU: internal data bus and ALU are 4-bit wide. If you add two 64-bit registers it takes like 16 more times than adding only 4-bit size. Obviously marvellous Motorola 6809 is an 8-bit CPU. Having some 16-bit registers doesn't qualify for being 16-bits as its ALU and internal data bus are 8-bits.
@deang5622
Жыл бұрын
@@davidg1830davidg is correct. The bit width of a processor is determined by the size of the data elements it processes not the address bus size. And that makes perfect sense if you think about it. The performance of the processor is principally determined by the width of the ALU and its registers, the size of the memory and maximum capacity of memory as determined by the address bus width has little bearing on this. On more modern processors then the clock frequency, the architecture, the number of clock cycles per instruction all come into it. In the old days we were more concerned whether it was an 8 or 16 bit processor.
3 жыл бұрын
One great thing about TinyBasic+ is that it can be used to control the pins of Arduino board, so you can write some simple programs like traffic lights etc in Basic.
@ninline2000
3 жыл бұрын
My first computer in 1984 was an 8 bit Commodore 64. It had a bit more memory though.
@WiFiSheep
3 жыл бұрын
The Commodore 64 had more memory then anyone back in the day! The 1K memory space for TinyBASIC is rather restrictive with the Arduino Other alternatives are being looked into so watch this space! ... Might mean a jump to 32bit .....
@bratwizard
3 жыл бұрын
I started with the Altair 8800b and it was a lot of fun.
@bratwizard
3 жыл бұрын
Of course. Arduino Nano's have been going for $2-3 bucks for years. I would point to the Blue Pill but that's not 8-bit, so I suppose it doesn't count. Or, alternately, you could point out that for your $1.50 you're getting FOUR 8-bit processors, they just happen to execute the same instructions together :-)
@robertnussberger2028
Жыл бұрын
Hmm, weird. Soo, they run the program, but Times 4 at the same time? Are they like four cores? It's quite cool how we could get these for like a couple of dollars. I bet if the producers of these hardwares notice that hobbyist are doing this, they would hike up the price 5 to 10 times the original cost. Seems to be every aspect of things that resemble vintage these days...
@immortalsofar5314
Жыл бұрын
Tips for soldering noobs (like myself) whose aversion comes from dab-dab-dab-dab-BLOB which ends up joining several pins. A good soldering iron and solder works wonders and put some solder on the tip first to stop the solder from sticking to the soldering iron.
@nielsdaemen
2 жыл бұрын
10:50 It has 1k EEPROM for storing data, but the program memory (ROM) is 32 kB
@daltonlightfoot6889
Жыл бұрын
Now I have an interesting question for you. Why are we paying $10 for an eight bit processor and more than $64 for a 64-bit processor?
@WiFiSheep
Жыл бұрын
Very interesting indeed! So I think its down to economies of scale. 8-bit microcontrollers such as the AVR range, were basically developed for industry, and things like Arudunio for hobbiests, (which use the same chips sets) jumped on the back of that, also most of that system is open source so anyone can use it, license free. later 32 and now 64 bit microcontrolers are still quite new, hence not adopted by industry in the same way, plus those that use ARM such as the Raspberry Pi Pico have to pay a license to ARM for the Cortex M0 technology... Same with 64bit which is very new and really only used by the hobby / maker sector, hence sales are lower, costs are higher, hence the price difference. As things develop im sure we'll see 32/64 bit chip prices come down, especially if a architecture is adopted by industry.
@Nimmbin
3 жыл бұрын
Loved it. Thanks heaps Tom. Love the channel 🙂
@WiFiSheep
3 жыл бұрын
My pleasure! Thanks for watching!
@namernum5692
3 жыл бұрын
TTGO-VGA can do CP/M emulation
@WiFiSheep
3 жыл бұрын
Thats interesting! This the ESP 32 based stuff? If so we're already looking into that, but not ready to go public just yet :-P
@MrKarateEd
3 жыл бұрын
I'm wondering if you can tell me where you purchased these 8-bit modules? Thanks in advance.
@WiFiSheep
3 жыл бұрын
Hi yes, it was a seller on Ebay listing here: www.ebay.co.uk/itm/313074662903 But you might find cheaper listings so do shop around! Try searching 'Arduino Nano' on ebay or aliexpress. All these are clones which more then fine and its what I used in the video. The proper branded Arduino Nanos are about £9 - £11 each!
@MrKarateEd
3 жыл бұрын
@@WiFiSheep Thanks very much. Very much appreciated.
@msthalamus2172
3 жыл бұрын
$4-$6 in exchange rates the day this video came out. Do they actually charge more for US customers? :)
@calebfuller4713
3 жыл бұрын
I was surprised to find that Zilog is still around, and actually still sells a new Z80 processor, which they've got up to 50MHz now!
@WiFiSheep
3 жыл бұрын
Yes I was to! I think both Z80 and 6502 are still in production manly to cater for the industrial market, so think plant machinery for example. But it dose then mean these chips are also still available to the hobby market, which is a good side effect!
@calebfuller4713
3 жыл бұрын
@@WiFiSheep I'd love to build a new machine around the z80 myself - something that could at least run CP/M because that gives access to a lot of software.
@BritishBeachcomber
3 жыл бұрын
A slight improvement on the 2.5MHz version I used in the 70s ;)
@bratwizard
3 жыл бұрын
I dare say you could emulate a faster z80 than that using newer run of the mill controllers :-) but I understand the appeal
@bxdanny
Жыл бұрын
So where is the link to actually order one of the beasties shown in this video? I think there used to be one. Was it removed?
@WiFiSheep
Жыл бұрын
Hi, as the prices of these have varied wildly due to the pandemic and chips shortage in recent times, I cant post just one product link, it would also suggest I was endorsing one product listing. All you need to do is search for 'Arduino Nano Atmega328p' on either Ebay, Amazon, AliExpress or any other preferred vender, and you'll find product as used in this video. Here is a UK listing as an example: Although I do NOT endorse this seller. www.ebay.co.uk/itm/263093090662?hash=item3d4191f966:g:jIgAAOSwsGVi4QEM&amdata=enc%3AAQAIAAAA8PbrbdC43hRznj38t4feAfYz6Mse1YYQrCPH5OfZLCrta0K4Hx4Dpwf6aSnXwcX63iV1kW4Kv%2FDToFwtjWzZbpXq2LsBHTZcHRJvgPUb2BFOMS4UUfC%2FbPg%2B3ammo3jZYv%2BMDoW5YTBKKuMQTVbdu%2FI8n%2FEMmHtiq19zQlVyj%2Bvtt%2FbKnP7RahGllyd%2B3oLPT7%2BBCFeN%2BR%2Fbkfux7WabjA1IfdZgKEvnPZ4TaNZ4FiZHEITGHGOzmQ94gRHJFQGj1EKDYP%2Bu3t7C6mddL4rwIRz0b5mI4MU%2FaH1D89ueZkJxwEUSulfINJKmaUCLc8%2FspA%3D%3D%7Ctkp%3ABFBMovG4mKJi
@vanhetgoor
Жыл бұрын
You would guess that NINE bit computers would be invented by now!
@WiFiSheep
Жыл бұрын
An extra bit for spares! Hmm I like it! You might be on to something! :-P
@SeamusMcNeil
3 жыл бұрын
Nice one mate - shame that some people forget to just enjoy a video rather than critique your soldering; which is better than a lot of people I must add. lol Thanks a lot for these videos and all the best for now. Cheers...Jim
@WiFiSheep
3 жыл бұрын
Hi Jim, thats very kind of you to say :-) I will totally accept my soldering is about arrange, a little better when not trying to film at the same time! But its good enough and gets the job done! Really I just want to give people confidence to have a go.
@0LoneTech
3 жыл бұрын
While we can easily argue about what makes an N-bit computer until the cows come home, it's very common to define it not by external bus width but by primary operand size for the central processor. For instance, the i8088 is a 16 bit processor with 8 bit bus (cut down from the i8086, with 16 bit bus), and the ESP32 has 32-bit processors with a 4-bit multiplexed external bus (QSPI). The 68000 is typically called a 16 bit processor, as it has a 16 bit ALU despite using 32 bit work registers; 32-bit (long) operations take longer than 8 or 16 bit ones. It also has a 16 bit data bus, but its sibling 68008 only has an 8 bit bus. An FPGA is also not a microprocessor; it's more like a digital circuitry lab in a chip. You can design all sorts of devices in it, including processors. The native width varies per function block internally, with 1, 2, 9 and 36 being common widths. In similar nitpicky semantics, an ATmega328 is not really a microprocessor, but a fully integrated microcontroller, or computer on a chip. Unlike a CPU, it cannot run programs from external memory. Some larger AVRs support external RAM, like the ATmega128, but their Harvard architecture only connects that to the data bus, not the instruction bus. You can get new Z80 8-bit microprocessors today, but they're quite a bit more expensive. Sadly, I have to agree you have poor soldering technique, but you're repairing it with the second pass. The problem is you're dropping hot solder onto a cold board, which leads to insufficient wetting; basically, a drop of solder solidifies next to the parts you meant to connect, rather than merging with them. Adafruit's guide to excellent soldering may help. And personally, while I did learn some BASIC early on, I don't love the language. I'd probably rather run FlashForth. The core reason is that it encourages building programs in terms of transformations and operations rather than focusing on single lines. But it's all good fun; not everything needs to be a Basic Stamp. Enjoy your hobbies! :)
@MichaelRBrown-lh6kn
3 жыл бұрын
No, for decades the acceptable thing was the use the data bus NOT the internal registers to determine if the CPU is 8, 16, 32 bit. Tho its acceptable to use 8/16 or 16/32. In your example, the 8088 should be called either 8bit or 8/16bit, NOT 16 bit; as the 68000 is 16bit or 16/32bit.
@0LoneTech
3 жыл бұрын
@@MichaelRBrown-lh6kn Like I said, it's rather arguable. 16/32 is precisely what ST in Atari ST means. But I think it'd be hard to find someone who claims the Pentium sits in 64-bit computers; it's 64/32, and the transition to wider bus than operand or register size makes sense because of the caches and clock domain differences. Like the distinction between word and byte size, I think the rule may have had to evolve along with architectural features. Is the Macintosh LC a 32-bit or 16-bit computer?
@deedd4401
3 жыл бұрын
there are arm soc boards with lan(not sure if wifi too ) and 2gb of ram ( doing 1080p playback ) for around $15
@davidkempton2894
3 жыл бұрын
It would be great if someone could port that BASIC into a RPi Pico. They are definitely under $10! Might be able to have a faster Baud rate too. 😊
@WiFiSheep
3 жыл бұрын
Hi David, that is something that is being looked into, it should be possible and would open up more RAM and faster processing. Baud rate not so much as its deliberately set slow to 300 rate more for the benefit of the standalone tv out terminal, used as part of the TinyBASIC computers project. Main reason a port to RPi PICO hasn't happened is im still waiting for official support for the rp2040 chipset under the Arduino IDE
@davidkempton2894
3 жыл бұрын
@@WiFiSheep Hello Tom. That's really good to hear. There is an unofficial release available now and I actually tried it today with the Tiny Basic .ino software. It failed to run due to memory issues I believe but that might be expected. So fingers crossed someone will fix that soon. I did a demo on Instagram today of Tiny Basic running on a Nano. You can see it @davek_uk. 😊
@Quazee137
3 жыл бұрын
MMBasic was put on the RPi but do changes it only works on older OS. I hoping that a version of MMBasic can be done for the RPi Pico.
@emotivepiano
3 жыл бұрын
Thanks for another great video Tom. I love your videos cos they teach me how to say computer words properly!!! ☺️ I thought Arduino was pronounced "ard - u - eeno" and not "ard - weenoh" mind you I spent my BBC micro years pronouncing ADFS as "add - fuss" and not "Aye dee eff ess" ...computing is largely a reading not talking affair I guess so great to have videos. Keep up the good work!
@robertnussberger2028
Жыл бұрын
This is a very good start in terms of building a personal 8 bit computer. Though, it probably would need 3 ardionos for: cpu keyboard input output and lastly screen projection driver.
@PaoloFabioZaino
3 жыл бұрын
Great episode Tom, thanks a lot! :)
@bamdadkhan
3 жыл бұрын
why delete Matt's comments? i really don't care how we define 8 bit or whether FPGAs can be considered 'hardware emulation' or not, there was nothing offensive about what he said..
@WiFiSheep
3 жыл бұрын
There are two moderators that help out here, Sometimes things get removed out of context. Or because they could be seen as provocative. I don't know what happened in this case, I will have a look into it.
@bamdadkhan
3 жыл бұрын
@@WiFiSheep cheers for that and for your response : )
@WiFiSheep
3 жыл бұрын
thats no problem i'm sure it was a mistake or miss-understanding, Matt is free to comment again if he so wishes
@gurthuk
3 жыл бұрын
Looks good fun and a little different from a pi.
@tswdev
3 жыл бұрын
Arent arduino nanos like 1 dollar on ali express?
@WiFiSheep
3 жыл бұрын
yeah quite possibly, but if you add shipping your up to about $3 if not a bit more... The prices quoted here were from Ebay UK and guesstimated for US dollars. As with anything prices will flux over time and between nations, so its near imposable to give an exact price at any given time.
@bratwizard
3 жыл бұрын
Possibly, but I usually think of them as about $3 bucks each. Blue pills are cheaper and better (stm32) at about $1.50. But I think the ESP32 is probably the best all around though for about $5-6 bucks each, depending on how well you shop
@tswdev
3 жыл бұрын
@@bratwizard i usually buy Arduino Pro Micro, I can connect a lipo 7.4v directly to them and they work with no extra components, they are also smaller. Is there a better alternative in terms of size? I'd love to get something a bit smaller than the Arduino Pro Micro. I used the attiny one but with just 3/4 usable pins, its not enough
Пікірлер: 59