- 21
- 283 591
Slador
United Kingdom
เข้าร่วมเมื่อ 9 พ.ย. 2020
Welcome to my channel devoted to digital electronics, computers and programming.
I started with a series of tutorial-like videos where I build an Intel 8088 computer on a breadboard which I am going to programme using assembler and C++. The series discusses basics of the x86 architecture using the example of the 16-bit 8088 CPU.
Join me to see more videos related to both electronics and programming.
More details on my webpage:
slador.uk
I started with a series of tutorial-like videos where I build an Intel 8088 computer on a breadboard which I am going to programme using assembler and C++. The series discusses basics of the x86 architecture using the example of the 16-bit 8088 CPU.
Join me to see more videos related to both electronics and programming.
More details on my webpage:
slador.uk
Raspberry Pi Pico disk controller for Intel 80188
JLCPCB PCB Fab & Assembly from $2! Sign up to Get $60 Coupons: jlcpcb.com/?from=Slador
In this video you can see:
- how I read data from an SD card using Raspberry Pi Pico
- what is the Master Boot Record on a hard drive and what it is for
- how a disk is divided into partitions and how BIOS handles it
- how the operating system is booted from a disk
- my design of a disk controller implemented on Raspberry Pi Pico
- how the Intel CPU accesses the SD card via the disk controller
All source code is available on my GitHub:
github.com/sladorsoft/Slador188
Visit my webpage:
slador.uk/
Libraries used in this video:
SPI SD Card block driver for the Raspberry Pi Pico:
github.com/carlk3/no-OS-FatFS-SD-SDIO-SPI-RPi-Pico
FreeRTOS:
www.freertos.org/
github.com/FreeRTOS/FreeRTOS-Kernel
In this video you can see:
- how I read data from an SD card using Raspberry Pi Pico
- what is the Master Boot Record on a hard drive and what it is for
- how a disk is divided into partitions and how BIOS handles it
- how the operating system is booted from a disk
- my design of a disk controller implemented on Raspberry Pi Pico
- how the Intel CPU accesses the SD card via the disk controller
All source code is available on my GitHub:
github.com/sladorsoft/Slador188
Visit my webpage:
slador.uk/
Libraries used in this video:
SPI SD Card block driver for the Raspberry Pi Pico:
github.com/carlk3/no-OS-FatFS-SD-SDIO-SPI-RPi-Pico
FreeRTOS:
www.freertos.org/
github.com/FreeRTOS/FreeRTOS-Kernel
มุมมอง: 8 055
วีดีโอ
FreeRTOS on Raspberry Pi Pico
มุมมอง 14K10 หลายเดือนก่อน
This video shows how easy it is to create Raspberry Pi Pico projects running FreeRTOS. It shows the "Hello World" basic applications to start your own designs from for Raspberry Pi Pico with and without FreeRTOS. Visit my webpage slador.uk/ to find the list of all my videos and all the supporting materials. You can find there the source code of all the programmes I write for this series. slador...
Toolchain setup for 16-bit Intel 8088 and 80188 step by step
มุมมอง 4.7Kปีที่แล้ว
This video is a step by step instruction on setting up the programming environment for 16-bit Intel 8088/80188 processors used in my videos. These are the links to webpages used in this video: - GCC for the 16-bit Intel (ia16-elf): github.com/sladorsoft/build-ia16 - NASM assmebler: nasm.us/ - make for Windows: sourceforge.net/projects/gnuwin32/files/make/3.81/make-3.81.exe/download - CMake: cma...
Toolchain setup for Raspberry Pi Pico step by step
มุมมอง 6Kปีที่แล้ว
This video is a step by step instruction on setting up the programming environment for the RP2040 processor on the Raspberry Pi Pico used in my videos. These are the links to webpages used in this video: - ARM GCC toolchain: developer.arm.com/downloads/-/arm-gnu-toolchain-downloads - Raspberry Pi Pico SDK: github.com/raspberrypi/pico-sdk - Python: www.python.org/ - GCC for Windows: winlibs.com/...
Raspberry Pi Pico talks to Intel 80188 as I/O device
มุมมอง 8Kปีที่แล้ว
This video has been sponsored by PCBWay.com - Standard PCBs, Advanced PCBs, Flex PCBs, PCB Assembly, 3D printing, CNC machining - it's all there! Check out their website at pcbway.com/ - PCB prices start from as little as $5! The Raspberry Pi Pico microcontroller talks to the Intel 80C188 as an I/O device using its PIO - Programmable I/O block. You will see: - all my fixes I've made to my Slado...
Raspberry Pi Pico - PIO explained
มุมมอง 33Kปีที่แล้ว
This video has been sponsored by PCBWay.com - Standard PCBs, Advanced PCBs, Flex PCBs, PCB Assembly, 3D printing, CNC machining - it's all there! Check out their website at pcbway.com/ - PCB prices start from as little as $5! Introduction to Raspberry Pi Pico microcontroller and its PIO - Programmable I/O block. You will see: - what is so great about the RPi Pico's RP2040 comparing to other mic...
Intel 80188 computer on a PCB - 16-bit Intel x86 breadboard computer [part 8]
มุมมอง 7Kปีที่แล้ว
This video has been sponsored by PCBWay.com - Standard PCBs, Advanced PCBs, Flex PCBs, PCB Assembly, 3D printing, CNC machining - it's all there! Check out their website at pcbway.com/ - PCB prices start from as little as $5! In this video I design a PCB for the 80188 computer from the last video and add programmable I/O ports - the 8255. This is what you will see: - the design of the PCB for m...
CPU upgrade - 16-bit Intel x86 breadboard computer [part 7]
มุมมอง 10K2 ปีที่แล้ว
This video has been sponsored by PCBWay.com - Standard PCBs, Advanced PCBs, Flex PCBs, PCB Assembly, 3D printing, CNC machining - it's all there! Check out their website at pcbway.com - PCB prices start from as little as $5! In this video I build a new computer using 80188 processor. This is what you will see in this video: - 80188 introduction. Differences between multiple versions - periphera...
More I/O devices: Interrupt controller and timers - 16-bit Intel x86 breadboard computer [part 6]
มุมมอง 8K2 ปีที่แล้ว
More I/O devices: Interrupt controller and timers - 16-bit Intel x86 breadboard computer [part 6] Intel 8088 16-bit computer on a breadboard. In this video I add more peripherals and programme them. Here is what happens step by step: - reactivate the 74244 octal buffers to act as a read-only register reflecting the states of the new push buttons - add functions to read the button states to allo...
Calling conventions and single-step execution - 16-bit Intel x86 breadboard computer [part 5]
มุมมอง 8K2 ปีที่แล้ว
Intel 8088 16-bit computer on a breadboard. This video is exclusively devoted to programming our breadboard computer and the theory behind it. You can see how I: - tidy up the last programme for the Text LCD testing - explain calling conventions allowing to mix code from different languages - talk about differences between functions compiled in different languages - how to write functions in as...
Logic gates built using only NAND gates - Digital electronics basics: 7400 logic chips [part 7]
มุมมอง 1.4K2 ปีที่แล้ว
Introduction to digital electronics in a tutorial style series of videos aimed mostly at beginners. In this video we build all the basic logic gates using only NAND gates. Visit my homepage to find out more about this series: slador.uk/
Open collector, three-state, Schmitt Trigger - Digital electronics basics: 7400 logic chips [part 6]
มุมมอง 1.7K2 ปีที่แล้ว
Introduction to digital electronics in a tutorial style series of videos aimed mostly at beginners. What is open-collector or tri-state output? What is the difference between the two? These are the questions this video answers to. We also experiment with an inverter with Schmitt Trigger input. Visit my homepage to find out more about this series: slador.uk/
More interrupts, clock generator and LCD - Building a 16-bit Intel x86 breadboard computer [part 4]
มุมมอง 12K3 ปีที่แล้ว
Intel 8088 16-bit computer on a breadboard. In this video you can join me to see how I: - add a new chip (74244) with 8 buffers to simulate the PIC's response to the interrupt request (without actually using the 8259) - write a new programme with a new interrupt handler for the INTR (maskable) requests - raise an interrupt using a wire on the INTR pin and, like previously, analyse the CPUs beha...
The XOR gate - Digital electronics basics: 7400 logic chips [part 5]
มุมมอง 1.7K3 ปีที่แล้ว
Introduction to digital electronics in a tutorial style series of videos aimed mostly at beginners. This video shows how the XOR gate works using the 7486 chip. Visit my homepage to find out more about this series: slador.uk/
The OR and NOR gates - Digital electronics basics: 7400 logic chips [part 4]
มุมมอง 1.3K3 ปีที่แล้ว
Introduction to digital electronics in a tutorial style series of videos aimed mostly at beginners. In this video we take a closer look at the OR and NOR gates. In these experiments on a breadboard I used the 7432 and 7402 TTL chips. Visit my homepage to find out more about this series: slador.uk/
The AND and NAND gates - Digital electronics basics: 7400 logic chips [part 3]
มุมมอง 1.5K3 ปีที่แล้ว
The AND and NAND gates - Digital electronics basics: 7400 logic chips [part 3]
The NOT gate - Digital electronics basics: 7400 logic chips [part 2]
มุมมอง 1.9K3 ปีที่แล้ว
The NOT gate - Digital electronics basics: 7400 logic chips [part 2]
Introduction - Digital electronics basics: 7400 logic chips [part 1]
มุมมอง 6K3 ปีที่แล้ว
Introduction - Digital electronics basics: 7400 logic chips [part 1]
Memory map and interrupts - Building and programming a 16-bit Intel x86 breadboard computer [part 3]
มุมมอง 20K3 ปีที่แล้ว
Memory map and interrupts - Building and programming a 16-bit Intel x86 breadboard computer [part 3]
First Real Programme - Building and programming a 16-bit Intel x86 breadboard computer [part 2]
มุมมอง 32K3 ปีที่แล้ว
First Real Programme - Building and programming a 16-bit Intel x86 breadboard computer [part 2]
First Run - Building and programming a 16-bit Intel x86 breadboard computer [part 1]
มุมมอง 97K3 ปีที่แล้ว
First Run - Building and programming a 16-bit Intel x86 breadboard computer [part 1]
Regarding xor instruction (21:00) ; please do make a series about useful assembly functions! I would love to learn more about low level programming!
Finding your videos very informative. I'm designing a vacuum tube computer, hopefully with 16bit data bus (very ambitious, I know). At 21:57 where you set DS & ES to zero, why use MOV and not XOR, being that, as you explained, XOR uses less clock than MOV. It seems a waste of clock, especially when setting SP, DS & ES all to zero are consecutive instructions, and, there is no jump instruction to F0007 in your program after any modification of SP
Almost total gibberish 🙊👳🏿♂💩
How did you build your clock and reset circuit? Which chips are used for that? Thanks.
@mihirsevak4456: the schematic is shown in the video around 12:14 timestamp (the circuit you're asking for is in the bottom-left part). It is also available on my GitHub: github.com/sladorsoft/Intel8088OnBreadboard I used 74HCT14 and 74HCT74. The couple of the pull-up resistors are around 10k and the caps are 1uF
awesome explanation, thx! one question though... your code works for one LED, but for the next LED you have again two additional instructions on the top to pull in the next 32bits into the shift register and throw away 8 bits. so every 24bits sent out to the LEDs you would get additional 800us low signal - or did I miss something?
Excellent video and great explanation. I had heard something special about the Pi Picos PIOs, but I had no idea. Just some feedback. I get the impression that code A thru D will all have slightly different waveforms(?), in that some of the instructions (in code A) take a single cycle and the PIO presumably holds its previous value. Later when you explain about the "side" feature this appears to be a way to change the PIO value while at the same time executing an instruction. I am unfamiliar with the waveforms needed by the LED device, so I am unclear as to whether each bit needs to be immediately back to back or whether there can be a pause of a few cycles.
Hi @migry ! You are perfectly right. The timings are not up to specs as another viewer had already noticed and commented on here. Yes, that was my mistake as I was more focused on explaining the PIO on a simple example rather than giving enough attention to the Neopixel specs. From my point of view it was more "this is how PIO works - look at this colourful LED as a confirmation" rather than "this is how you drive Neopixels using something called PIO". Of course I should've thought about timings more carefully, or used a different device for output. The specs for WS2812B say that bits need to follow one another immediately (each bit is 1250ns long) and the pause tells them to reset their inputs and listen to the next series of bits coming. The pause in this case needs to be at least 50us.
Dear sir. Did you realized to write a Manchester coding interface using PIO? This code alows sendind data by ac Channel like Transformers, and allows pre equalizations, and filtering. Don't you?
Hi @JorgeSilva-em8pf! Yes, I saw someone implementing a Manchester code and built a working Ethernet controller. There is plenty of possibilities of using PIO for communication and if I wanted to try them out it would take hundreds of videos ;-) But in the next video I'm going to show how to programme the Pico W to talk to the Internet via Wi-Fi. I hope you find it interesting as well.
So glad ur back. I love this series
Thank you for that. I know it was a long time between the two last videos, but I'm going to try to make my pace a little bit faster ;-)
I followed your installation tutorial to the letter, including using the same cmake, make, etc. versions, but it doesn't work at all and gives the following error: [cmake] -- Detecting C compiler ABI info - failed This toolchain is not easy to install on Linux, Ubuntu doesn't compile. I thought that on Windows with the binaries it would be much easier, I was wrong.
Sorry to hear that it didn't work for you. Don't even let me start on building it on Ubuntu. The code (or dependencies between the repos) is very often broken and rarely builds. After producing my binaries I tried to update them later on, but there was always a problem with compilation at different stages. It's hard to troubleshoot your problem remotely, but you could check two things: 1) check if this toolchain is in the PATH: run a command line and type "ia16-elf-gcc.exe" and see if it can be found. 2) go to VS Code, press Shift+Ctrl+P and type "select a kit". Choose this option and check if you can see "GCC 6.3.0 ia16-elf" on your list of toolchains. If it's not there, rescan the toolchains (by again pressing Shift+Ctrl+P and typing "scan for kits") - but it will work only if it is in the PATH.
@@SladorSoft Thank you for your answer, the project gcc-ia16 is a mess for someone that does not know it deeply, but I found out that gcc-ia16 is not mantained anymore and the project that should be used todays is build-ia16, I am trying it. If I get a succes in this task, I can send to you a version project that compiles in linux ubuntu, so you can make it available , if you agree with this.
School PCs be like
Cool, since Microsoft released the older dos/windows source code in the public domain, I wonder if there is a version for this.
Hi @keiichicom7891! Thanks for that. Yes, my aim is to implement the BIOS to be able to boot DOS on my computer - maybe not this one on the breadboard, but the one I'm building in more recent videos.
So, you read the 512 bytes of the sector from the DATA register using a loop. What I don't understand is how this is synchronized. Is it possible that you might accidentally read the same byte twice because the next byte has not yet been written to the DATA register?
init.asm line 127 checks DISK_CTRL_STATUS_BUSY until data is ready. The way PC disk controllers work they receive a command to read one or more sectors and will only give signal when they have at least one full 512-byte sector ready, either with interrupt or by changing status.
I'm sorry @marcrobach7376, because it looks like I didn't explain this well enough and thanks @rasz for clearing this up. So the Pico first reads the whole sector to its own memory, then clears up the "busy" flag, which lets the Intel CPU to read this buffer byte by byte. The Pico has it's own pointer to the next byte to be read in this buffer and each access from the main CPU increases this pointer. Maybe I should have showed the most important parts of the Pico code in the video - sorry for that confusion.
Interesting project, but I have a question - why not use a CompactFlash to IDE adapter? This is what we've been using as a server boot drive for a decade in early 2000s
CF is indeed a 16 bit IDE card and can be directly connected to a 16 bit ISA bus with 2 74245 buffers. A 8088 and 80188 have a 8 bit ISA bus, so a XT-IDE ISA card is a solution for a CF card that exists for years as the 8 bit IDE hard disks like Seagate ST351X are very rare. A 80186 and up have a 16 bit ISA bus and can use a CF card directly. CF has a parallel interface and SD a serial interface and there is where the fun starts...
This will take the same amount of time to adapt an xtide to this than doing on pico because xtide talk to isa and here it is direct cpu access. This board is not pc compatible so it require à huge work to rewrite the xtide bios. See how simple it is to code at the 80188 side with just some registers vs ide.
@@freddyvretrozone2849 a 8088 XT does not have hard disk support in it's main bios like a 80286 AT and up have. How different is the connection to this CPU than the connection via the ISA bus on a PC XT? I have to dig deep in my memory concerning DMA and Interrupt controllers...
Thanks a lot @sjococo! Yes, what you said was exactly my point for not using CF. I added this Pico there not only for the SD card access, but also for keyboard, UART and maybe other peripherals later. It's so much simpler doing it with this Pico board rather than adding support for long forgotten CF cards where I'd need to add something in-between to use it on a 8-bit bus. And also, @sjococo mentioned the most important reason in their last paragraph ;-) That's where the fun starts :-)
Thanks @freddyvretrozone2849. Since the beginning, I emphasised that I'm not trying to build a PC compatible, but I do this only for fun and to have a chance to talk about this old technology. Also, the whole point is to write a BIOS myself, not to use anything out there. It's a project I started for fun, that's it :-)
Good project! Do you think about DMA implementation? It would drastically increase the performance.
You are perfectly right @Kitsok! This was just a first attempt to test the idea. Surely, the next step is to implement it properly using DMA. And it's going to be a good excuse to look more closely at the timings in both cases using a logic analyser.
Im Wondering how many times faster the pico is compered to 80188 Any way cool project Very interesting to watch
Thank you! Yes, I was wondering about it as well... It's hard to estimate, but... are you thinking what I'm thinking? ;-) Maybe at some point in the future, I'll try to emulate 80188 on Pico?
@@SladorSoft that would be awesome tbh but also hard
@@SladorSoft CoreMark 67.181 CoreMark/MHz 1.0179 Inter 486 And pico CoreMark about 260 CoreMark/MHz about 2 Pico 2 Core mark about 600 Core mark/MHz about 4 RISC cores also about 4 Pico 4x st 8xmt Pico2 10x st 20x Mt St-single thread Mt-Multi tread
Was looking forward for a new video from you for a good while now :) Welcome back :)
Oh, thank you @ModSlash. Yes, I had a break, but from now on, I'll try to reserve as much time as I can to make videos more often. I have this problem, where I have more ideas than the time to realise them... ;-)
Yes !! This is very good instruction. ARM GCC must be 12.2 - in other case compilation will always fail. arm-gnu-toolchain-12.2.rel1-mingw-w64-i686-arm-none-eabi.exe
cool I have been doing something like this with the 8086
29 instructions! Impressive. Your videos are a great source for me in learning PIO. Thank you.
fun fact: fischertechnik used an and and a nand chip in their interfaces in the 80s and probably the 90s
The unconventional pinout of the '02 has bitten me several times over the years.
wow, this video is so fun to watch, and I've got a whole lot about the actual working process of a real cpu. AMAZING JOB, Slador!
Thank you, great video
27:30 - binary to hex machine code
Videolarınız âdeta biler kütüphane değerinde, Şimdiye kadar daha sade bir anlatıma henüz karşılaşmamıştım, Bu sebeple bilgisayarıma arşiv olarak indirmiş bulundum, Türküye den Selamlar
Thank you very much. I'm really happy that you found it useful!
Have you run the Sequence code on the 80188 yet?
No I haven't, but there should be no difference in the programme nor the outcome. I ran Fibonacci sequence again, step by step on 8088 and using full 16-bit registers in part 6 of this series th-cam.com/video/8G3bwkIS3do/w-d-xo.html around 13:00 mark.
69 missed calls from Ben eater
Can this thing run ms dos?
MS-DOS was written for 8088 CPU, so it is compatible, yes. Obviously, to run MS-DOS you need much more than just a CPU. For example, you need a storage to load MS-DOS from, you need a keyboard controller, a graphics card to display anything on, etc. If you look at my more recent videos, where I build a 80188 system, you will find that I'm working towards this goal - already added a disk controller and more is coming, so please stay tuned!
hey I am trying to do this on my own so a few questions. 1) What processor should I buy? I am finding 8088 ...8bit processors from intel. I assume they will come with data sheets but I want to follow this as is first so please advise. 2) what is the resistor and LED combination that is put in for data lines? Can you give their attributes how much resistance and what kind of leds to buy? 3) for clock you created a circuit yourself but didn't go in details so can you share what to buy for that please? Thanks
Hi there! Thanks for watching and here are the answers to your questions: 1) Yes, I'm using 80C88 - any manufacturer would do it. You can find the datasheets on the Internet easily. I show the relevant parts of it in my videos (including the pinout) as well. 2) Any LEDs would work. Since we are using the 5V logic here and an LED usually needs a few mA to light up, the resistors could have values from around 470 Ohms to 2.2k. It depends on the LEDs, so you can experiment. I found my blue ones really bright at a small current, so used the 2.2k with them. Others are 1.2k in my case I think. 3) I showed the schematics around 12:14 mark (the clock and reset circuit is in the left bottom part). Have a look at my GitHub pages where I publish all the schematics as well. I used two ICs: 74HC14 and 74HC74 (both can be HC or HCT). I missed putting the resistor and capacitor values on the schematics - they could be something around 10-47k and 1-10uF respectively. They are only used there to debounce the buttons, so the values may vary.
@@SladorSoft Thanks. I am trying to build this. Will let you know if have any issues.
Don't hesitate to ask, if you need help
@@SladorSoft Thanks for your offer to help. I have ordered the parts online and waiting for them to arrive. Is there an email I can contact you on in case I get stuck? Thanks.
I followed your schematic if without ram and ROM, and I used clock from 8284 what should I get shown in address and data?
It depends whether you used a crystal oscillator with your 8284, or a button and you clocked it manually. If you used a crystal, the clock would obviously be very fast and the LEDs would blink so quickly, that they would appear all on. If you used a button and generate the clock manually, after 7 ticks from the reset, you would see exactly the same outcome as in the video (around 8:40 mark), so the 16 LEDs would be turned on (in A19 to A4 lines) and the rest 4 (A3 to A0) would be off.
Hello, is possible use two diffrent PIO programs? For example RGB and tone generator.
Yes, this and even more is possible. One PIO device has 4 state machines, each of them can run a separate programme and each of them has separate GPIO pin binding, clock divisors, etc. The only limitation is that all 4 state machines (programmes) share the same programme memory, which is only 32-instruction long. In other words, all (up to) four of your programmes need to fit together in this 32-instruction long space. On top of that, there are two completely independent PIOs on RP2040 chip, so you can theoretically run up to 8 short programmes. The example in the video was as simple as possible and was using only one state machine of one PIO. In one of the future videos I'll be showing an example of multiple programmes running on the same PIO.
@@SladorSoft Ohh, thanks. I'm very interested, but i cant find any easy tutorial. i'm trying to make my own PIO program for WS2812, only works one pixel, i think is a problem with timings, you know any way to send the data to others pixels?
Sorry for my english, i speak spanish.
I really enjoyed this video, so many memories. I remember making a simple TDM multitasking TSR using a timer interrupt. I think i still have the peter norton book on 486 assembly somewhere.
Thank you! I know exactly what you mean. Memories... ;-)
Good job. I had plans to build a microprocessor system myself but designed a relay logic calculator and a few video games instead. Then I learned what I needed to convert to integrated circuits. Your 6 ic project will maybe help me to do an microprocessor project project
Aguardamos o décimo vídeo desta fantástica série de vídeos! E desde já agradeço sua disposição para dividir com todos nós os seus conhecimentos. Muito Obrigado!
Obrigado meu amigo! Next video is almost done - I am struggling with finding enough time to finish it. I have plans for at least 3 more videos in this series after which I'm going to design a new, hopefully final PCB for this computer.
I wonder about having the IRQ clear after the long delay. If you clear IRQ before the delay, you can do that for "free" as part of the delay; the main processor tasks would have more time to rest the buffers, among their other tasks. But overall an excellent description of PIO, I finally understand a few things.
Apologies for late response. I assume you're referring to the last example. Please note that the interrupt flag in this programme is used only as a "busy" flag, which the main programme can check before sending new data to PIO over DMA to keep the required "reset" timeout of the LED. It does not stop the main programme from doing something else. In this programme this flag does not even raise a CPU interrupt. I used the while loop only to show how we can use PIO interrupt bits to synchronise the CPU programme with the PIO one. This is just a trivial example not meant to use in any "production" code. In real-life programme you could simply raise a CPU interrupt when the IRQ flag is set, which handler would send the data from RAM to PIO automatically. Then the main programme would write the required pattern data to the RAM and go on doing other stuff.
is this the last video of the series ?
It is definitely NOT. I shall release next video soon - it requires lots of preparations, but I'm almost done. Any other videos I created recently were related to this series anyway. I made the most recent one, about running FreeRTOS on RPi Pico, because I needed the Pico in my Intel computer as a peripheral, which you will se working very soon. There will be at least three more videos before I create the new, finalised PCB, which I will show you later and start working seriously on its BIOS to get a complete, working computer.
OMG 16 bit
Christ I need a lay down after this one. Feel live I’ve gone from a manageable pace to major coding hell 🤦♂️ I do love your series though, please keep it up
Thanks for surviving the hell ;-) But, more seriously, I'd appreciate if you shared the reasons for you struggling. Too much information (or coding)? Too boring? Not clear enough? What could I do better? Thanks for that!
Whats inside that chips? How it works? Can u explain?
Is it possible for a task to wait for EITHER queue data OR timeout? I'd like the main task to immediately process queue commands, but even if there's no commands perform other functions periodically. For example, I've read that relying on vTaskDelayUntil() is not recommended because the timing may not be precise due to preemption/blocking/tick-count wrap around/etc?
Thank you for Good Simulation ~~😍😍😍
Brilliant tutorial. Thank you.
thank you sm for these! great explanations and setup
Hands down the best PIO video I've seen on yt so far, this has inspired me to try PIO out. Just wish the algo had suggested this earlier 😂
Stacksmashing also has a fabulous video...
Oh no this poor processor, I sense it's about to receive more interrupts than an engineer sharing an office with the sales team lol.
4th micro-op is when a decoded instruction is executed? There are no micro-ops within that? This is a truly byzantine architecture..... and it's only on its initial revision lol. No wonder we studied MIPS in class not this nonsense, x86 we only looked at from whole opcodes.
Oh no I see it's even more convoluted than that lol.
Random jumper colors makes me cry lol.
T es incroyable mon reuf. Sache le
Merci beaucoup monsieur ;-)
Thank you for your video! Can I use NEC V20 (wiki says that it CMOS too) to build similiar circuit with manually switching ticks of CPU?
Hi @yuriiradkovskyi8330. I have no experience with the V20, but I'm afraid that the manual clock may be impossible (despite that it's CMOS as you pointed out). According to its datasheet the maximum allowed clock cycle is 500ns, which translates to the minimum frequency of 2MHz.
@@SladorSoft Thanx, will buy 80C88 then for experiments like that
Nice video. I have a few examples of FreeRTOS projects on my channel too on the Pico and Pico-W. I think FreeRTOS can be scary but in fact is quite straightforward. Once you start using on a Pico-W with LwIP it enables so much as you gain a task looking after the IP stack and providing Sockets.
Thank you @DrJonEA for your comment. I had exactly the same feeling about FreeRTOS when I first saw it, but quickly realised that it's really simple to use. Funny you mentioned PicoW and lwIP, because last year I built a simple contraption using these just for fun. Maybe I'll show it in a future video as it may be a good starting project for people wanting their PicoW to use the Internet very easily. I used lwIP together with mbedTLS for HTTPS.
@@SladorSoft That sounds great. Perhaps we can do a few cross overs between our two channels.