Haha, thanks for your comment, confirm I am human! 😄 Hardware is like software, hard to get things working from the first time, but I find it more exiting when everything works!
@@Zeal8bit I never ordered a custom PCB from a factory myself: not that it is that expensive, I'm rather lame at designing them in CAD software yet. But I'm not bad at soldering tho, so when I discovered that the UV-cured resin I'm using is quite a heat-resistant thing, I made me a flat piece of it, soldered some thin but rigid guiding «feet» to some SMD ICs, secured those wiring lines with the same resin, connected some more jumpers on top of it all, wired everything, confirmed it working, and covered it all in resin to protect it from any mechanical / electrostatic influence or short-circuits. Leaving the components accessible in case I need to replace them. It's not a thing I'd recommend anyone, but I encourage others doing their own prototypes and learning from them, and this is why I'm happy that you're doing your project. Together we learn, together we get better.
@@jkobain We learn by making mistakes indeed. I find that Kicad is rather simple to begin with (compared to EasyEDA), you can try making small PCBs first, even if you don't get it perfectly from the first time, at least your will get better and bette over time. I am curious about your custom PCB build, sounds very cool, have you written an article or publish anything to show it?
@@Zeal8bit no, unfortunately I don't publish pictures at all. But one of them is a simple SPI flash memory array (128MiB×4, resulting in 64 megabytes of storage) module with combined address space and one LittleFS2 on them all, connected to an RPi Pico with MicroPython. I'll try laminating one with stripes of copper foil later, I think, and probably publish something one day as well.
I'm not sure why, but I never realized how simple CompactFlash really is. I'm gonna have to redesign my computer to use it since that would make things much easier! lol
It is! It is not easy to get started with the specification only, and I couldn't find a lot of info about how to interface CompactFlash to an 8-bit computer in details, this is why I decided to make this video. I hope it helped you. Which computer are you designing? Is it an 8-bit computer?
@@Zeal8bit I'm working on a design with a custom CPU. It's a hybrid between 8-bit and 16-bit using an 8-bit instruction set and an 8-bit internal bus to perform 16-bit operations. I was planning on using an EEPROM to store the instruction set but I might replace that with the CompactFlash to simplify upgrading the instructions. Who knows, I might be able to switch to a full 16-bit design because of this. It was a hybrid because I wanted a 16-bit machine but ran into issues finding parts. I'll have to make a video and a GitHub repo once I get something working.
@@retrojon_ Very cool! When you say "store the instruction set" do you mean store the actual code for your CPU or do you mean you were using a microcode-style CPU? Are you implementing it with discrete logic, virtually (Logisim-like), CPLD, FPGA? I would be happy to know more about your project if you have a blog, link, git, etc...
@@Zeal8bit It's going to use micro code. The opcode will simply be a pointer to the microcode to run. All of this will be done with discrete logic; no cheating in this project lol. I also want to do what you did and be able to use the Compact Flash as normal storage for the computer. I don't have anything public yet but I'll let you know when that changes. Perhaps I'll try a blog.
@@retrojon_ For sure using a CompactFlash as the main storage is possible and would be a very good choice, keep in mind that you will still need at least a ROM/NOR Flash to store the code that will perform the commands to the CompactFlash and copy the content to RAM. It doesn't need to be huge, 8KB is enough
Zeal! Hope you are well. I still have an email in my drafts folder for you. :( Very nice that you have added IDE/CF. Be weary that not all cards support 8 bit mode. In my experience support for it was dropped around the time 128MB came a long. Certainly any new card will not have support for if (the command to switch mode returns an error) Anyway awesome stuff. Glad you’re still getting a kick out of this.
Lawrence! What a pleasure to hear from you, a lot of things happened on the project as you can see! I remember you told me about that when I was still at the beginning of the project, I was trying to find CF cards that have support for 8-bit mode but the sellers usually don't really know much about it. I bought 3 cards: 16MB, 32MB and 1GB, all of them are brand new. Surprisingly, all of them support 8-bit mode, even the 1GB one! The brand written on its sticker is CHUJI (储技), maybe they are still using "old" micro-controllers inside the CF card? In any case, that's a good thing for us
@@Zeal8bit that’s jolly interesting as it’s the reverse of my experience. It’s encouraging for folks using CFs with 8 bit micros for sure. I still think it’s a much nicer setup then SD cards and all the extra work that goes with them. That’s so cool that you could have a GB of storage on your micro. :) I need to get back to my retro projects!
@@lawrencemanning SD cards do require more work for such retro project, but more handy when used with an MCU that has SPI. I find CompactFlash pretty cool, they give a retro aspect that I like. Keep me informed of your retro projects!
Nice catch! This is a graphic bug that is related to the FPGA board, I haven't deeply investigated this issue because I was mainly working on the motherboard recently, but my guess is that the connector between the motherboard and the video board is not very sturdy at the moment so the signal sometimes may be interpreted as active by the FPGA when they shouldn't be. As they also go through a level-shifter, some delay is also introduced, which can also affect the signals. I will resume my work on the FPGA soon, I will work on its stability and implementing the missing features, hopefully this will be fixed! 😄
Thanks for your comment! FAT32 is possible in theory but in practice FAT16 is a better choice because it is smaller and simpler to implement. It is planned to add support for it in Zeal 8-bit OS but it takes time, help from the community is welcome😄 In my opinion, 4GB or even 2GB is already more than enough for most usage of Zeal 8-bit Computer.
Bonjour, votre série est une très bonne source d'inspirations ! Petite question. Avez-vous déjà pensé à transférer le MMU dans le FPGA ? Bien sûr, le fonctionnement de la carte est tributaire du FPGA mais imaginons que la gestion des IOs et du CTC (i2c, clavier, PIO, MMU, et pourquoi pas SPI...) soient transférée dans le FPGA, la carte s'en trouverait simplifiée et on pourrait imaginer de combiner les 2 cartes. Qu'en pensez-vous ?
Merci pour votre commentaire ! Tout cela est possible, mais transférer la MMU dans le FPGA impliquerait donc une dépendance de la carte mère sur la carte fille, j'aimerais que la carte mère soit indépendante pour pouvoir être utilisée sans la carte vidéo (FPGA). Par rapport aux autres différents composants, il est même possible de tous les implémenter dans le FPGA, y compris le CPU, on se retrouverait donc avec un PCB extrêmement simple qui ne contiendrait que le FGPA, la RAM, un port SD, un port VGA, cela réduirait drastiquement les coûts. Mais serions-nous toujours en train de faire un ordinateur rétro? Je pense que l'on perdrait la saveur du projet, qui est aussi de pouvoir apprendre et comprendre comment un ordinateur fonctionne lorsque différents composants partage un bus de données et comment ils interagissent ensemble. De plus, avec un projet où tous les composants sont indépendants, il est possible de brancher un oscilloscope ou un analyseur logique pour voir tous les signaux logiques en action. Avec un FPGA (obligatoire), cela ajouterait une boîte noire qui cacherait le cœur même de l'adressage: la MMU. En résumé, c'est tout à fait possible mais cela serait un autre projet, pas moins intéressant, mais différents au niveaux des buts à atteindre
Спасибо за ваш комментарий. В конечном итоге, цель проекта заключается в создании функционального 8-битного компьютера с графикой. Я бы хотел иметь возможность создавать игры с хорошей графикой в стиле Gameboy. На данный момент материнская плата позволяет нам писать и выполнять программное обеспечение без помощи другого компьютера. Однако, мне ещё предстоит поработать над видеокартой, которая основана на FPGA.
@@Zeal8bit Я предполагал это, если сообщество заинтересуется проектом, кто начнёт писать новые программы, а кто-то переносить уже существующие игры и т. п. И про видеокарту я так и думал что у этого проекта огромный потенциал!
@@SinedWOLF Большое спасибо за вашу поддержку! Я также считаю, что FPGA - это настоящая революция в ретро-проектах, подобных моему. Я постараюсь завершить его в ближайшее время, чтобы мы уже могли начать портирование или написание игр! Я забыл упомянуть звук. FPGA также будет обрабатывать звук, потому что я не смог найти ни одну звуковую микросхему, которая все еще производится. Я реализовал простой генератор волн, который может генерировать треугольные, прямоугольные и пилообразные волны заданной частоты. (Извините, если я допускаю ошибки, я пользуюсь переводчиком)
Bonjour à toi et merci pour ton message! Pour le moment, ce n'est pas prévu, les vidéos me prennent pas mal de temps à préparer, par contre l'ajout de sous-titres en français est tout à fait possible, j'essaie de le faire quand je le peux. Cela pourra évidemment cahgner à l'avenir, en fonction de l'évolution du projet
I was curious if it's gonna work the first try. Thank you for confirming that you're human and can make mistakes too. Cheers!
Haha, thanks for your comment, confirm I am human! 😄
Hardware is like software, hard to get things working from the first time, but I find it more exiting when everything works!
@@Zeal8bit I never ordered a custom PCB from a factory myself: not that it is that expensive, I'm rather lame at designing them in CAD software yet. But I'm not bad at soldering tho, so when I discovered that the UV-cured resin I'm using is quite a heat-resistant thing, I made me a flat piece of it, soldered some thin but rigid guiding «feet» to some SMD ICs, secured those wiring lines with the same resin, connected some more jumpers on top of it all, wired everything, confirmed it working, and covered it all in resin to protect it from any mechanical / electrostatic influence or short-circuits. Leaving the components accessible in case I need to replace them.
It's not a thing I'd recommend anyone, but I encourage others doing their own prototypes and learning from them, and this is why I'm happy that you're doing your project.
Together we learn, together we get better.
@@jkobain We learn by making mistakes indeed. I find that Kicad is rather simple to begin with (compared to EasyEDA), you can try making small PCBs first, even if you don't get it perfectly from the first time, at least your will get better and bette over time.
I am curious about your custom PCB build, sounds very cool, have you written an article or publish anything to show it?
@@Zeal8bit no, unfortunately I don't publish pictures at all. But one of them is a simple SPI flash memory array (128MiB×4, resulting in 64 megabytes of storage) module with combined address space and one LittleFS2 on them all, connected to an RPi Pico with MicroPython. I'll try laminating one with stripes of copper foil later, I think, and probably publish something one day as well.
@@jkobain If you end up publishing anything, come back with a link so that we can enjoy reading it! 😄
I'm not sure why, but I never realized how simple CompactFlash really is. I'm gonna have to redesign my computer to use it since that would make things much easier! lol
It is! It is not easy to get started with the specification only, and I couldn't find a lot of info about how to interface CompactFlash to an 8-bit computer in details, this is why I decided to make this video. I hope it helped you.
Which computer are you designing? Is it an 8-bit computer?
@@Zeal8bit I'm working on a design with a custom CPU. It's a hybrid between 8-bit and 16-bit using an 8-bit instruction set and an 8-bit internal bus to perform 16-bit operations. I was planning on using an EEPROM to store the instruction set but I might replace that with the CompactFlash to simplify upgrading the instructions. Who knows, I might be able to switch to a full 16-bit design because of this. It was a hybrid because I wanted a 16-bit machine but ran into issues finding parts. I'll have to make a video and a GitHub repo once I get something working.
@@retrojon_ Very cool! When you say "store the instruction set" do you mean store the actual code for your CPU or do you mean you were using a microcode-style CPU?
Are you implementing it with discrete logic, virtually (Logisim-like), CPLD, FPGA?
I would be happy to know more about your project if you have a blog, link, git, etc...
@@Zeal8bit It's going to use micro code. The opcode will simply be a pointer to the microcode to run. All of this will be done with discrete logic; no cheating in this project lol. I also want to do what you did and be able to use the Compact Flash as normal storage for the computer. I don't have anything public yet but I'll let you know when that changes. Perhaps I'll try a blog.
@@retrojon_ For sure using a CompactFlash as the main storage is possible and would be a very good choice, keep in mind that you will still need at least a ROM/NOR Flash to store the code that will perform the commands to the CompactFlash and copy the content to RAM. It doesn't need to be huge, 8KB is enough
30 years ago, I was having ZX spectrum, and I was doing stuff like this, I like your videos it remind me with the great home computer era
Happy to hear that you like the videos!
My goal is also to show that these 8-bit computers can still be useful 😄
Zeal! Hope you are well. I still have an email in my drafts folder for you. :(
Very nice that you have added IDE/CF. Be weary that not all cards support 8 bit mode. In my experience support for it was dropped around the time 128MB came a long. Certainly any new card will not have support for if (the command to switch mode returns an error)
Anyway awesome stuff. Glad you’re still getting a kick out of this.
Lawrence! What a pleasure to hear from you, a lot of things happened on the project as you can see!
I remember you told me about that when I was still at the beginning of the project, I was trying to find CF cards that have support for 8-bit mode but the sellers usually don't really know much about it. I bought 3 cards: 16MB, 32MB and 1GB, all of them are brand new. Surprisingly, all of them support 8-bit mode, even the 1GB one! The brand written on its sticker is CHUJI (储技), maybe they are still using "old" micro-controllers inside the CF card? In any case, that's a good thing for us
@@Zeal8bit that’s jolly interesting as it’s the reverse of my experience. It’s encouraging for folks using CFs with 8 bit micros for sure. I still think it’s a much nicer setup then SD cards and all the extra work that goes with them. That’s so cool that you could have a GB of storage on your micro. :)
I need to get back to my retro projects!
@@lawrencemanning SD cards do require more work for such retro project, but more handy when used with an MCU that has SPI. I find CompactFlash pretty cool, they give a retro aspect that I like.
Keep me informed of your retro projects!
As always, your video is perfect, it’s always a pleasure to watch your videos, you’re amazing 💡
Thank you very much for your comment, it is motivating!
Awesome work! Will there be fat16 support in the future?
Thanks for your comment!
It is planned indeed, not sure when as it requires some time, help from the community is welcome 😄
What's up with the spurious 7 between bytes 7D and 7E? (10:45). Is that a program bug?
Nice catch! This is a graphic bug that is related to the FPGA board, I haven't deeply investigated this issue because I was mainly working on the motherboard recently, but my guess is that the connector between the motherboard and the video board is not very sturdy at the moment so the signal sometimes may be interpreted as active by the FPGA when they shouldn't be. As they also go through a level-shifter, some delay is also introduced, which can also affect the signals.
I will resume my work on the FPGA soon, I will work on its stability and implementing the missing features, hopefully this will be fixed! 😄
Nice!
So does that mean that Zeal 8-bit will get FAT32 support soon? Because being able to have up to 64GB of storage makes this a very serious computer.
Thanks for your comment!
FAT32 is possible in theory but in practice FAT16 is a better choice because it is smaller and simpler to implement. It is planned to add support for it in Zeal 8-bit OS but it takes time, help from the community is welcome😄
In my opinion, 4GB or even 2GB is already more than enough for most usage of Zeal 8-bit Computer.
Unbelievably useful subscribed thumbs up
Thank you very much!
Im commenting for the algorhitm :)
Hah, thanks for your support!
Bonjour, votre série est une très bonne source d'inspirations !
Petite question. Avez-vous déjà pensé à transférer le MMU dans le FPGA ? Bien sûr, le fonctionnement de la carte est tributaire du FPGA mais imaginons que la gestion des IOs et du CTC (i2c, clavier, PIO, MMU, et pourquoi pas SPI...) soient transférée dans le FPGA, la carte s'en trouverait simplifiée et on pourrait imaginer de combiner les 2 cartes.
Qu'en pensez-vous ?
Merci pour votre commentaire !
Tout cela est possible, mais transférer la MMU dans le FPGA impliquerait donc une dépendance de la carte mère sur la carte fille, j'aimerais que la carte mère soit indépendante pour pouvoir être utilisée sans la carte vidéo (FPGA).
Par rapport aux autres différents composants, il est même possible de tous les implémenter dans le FPGA, y compris le CPU, on se retrouverait donc avec un PCB extrêmement simple qui ne contiendrait que le FGPA, la RAM, un port SD, un port VGA, cela réduirait drastiquement les coûts. Mais serions-nous toujours en train de faire un ordinateur rétro?
Je pense que l'on perdrait la saveur du projet, qui est aussi de pouvoir apprendre et comprendre comment un ordinateur fonctionne lorsque différents composants partage un bus de données et comment ils interagissent ensemble. De plus, avec un projet où tous les composants sont indépendants, il est possible de brancher un oscilloscope ou un analyseur logique pour voir tous les signaux logiques en action. Avec un FPGA (obligatoire), cela ajouterait une boîte noire qui cacherait le cœur même de l'adressage: la MMU.
En résumé, c'est tout à fait possible mais cela serait un autre projet, pas moins intéressant, mais différents au niveaux des buts à atteindre
What flux can you recommend?
I find that the one I use is very good, I use it for soldering all my SMD components, even BGA256 FGPA!
It's the Amtech NC559
Thanks! Let's try it.
Автор, какие перспективы у проекта?
Спасибо за ваш комментарий. В конечном итоге, цель проекта заключается в создании функционального 8-битного компьютера с графикой. Я бы хотел иметь возможность создавать игры с хорошей графикой в стиле Gameboy. На данный момент материнская плата позволяет нам писать и выполнять программное обеспечение без помощи другого компьютера. Однако, мне ещё предстоит поработать над видеокартой, которая основана на FPGA.
@@Zeal8bit Я предполагал это, если сообщество заинтересуется проектом, кто начнёт писать новые программы, а кто-то переносить уже существующие игры и т. п. И про видеокарту я так и думал что у этого проекта огромный потенциал!
@@Zeal8bit А ещё в играх весомую роль играет музыка) Трекерные композиции тех лет до сих пор отлично слушаются.
@@SinedWOLF Большое спасибо за вашу поддержку! Я также считаю, что FPGA - это настоящая революция в ретро-проектах, подобных моему. Я постараюсь завершить его в ближайшее время, чтобы мы уже могли начать портирование или написание игр!
Я забыл упомянуть звук. FPGA также будет обрабатывать звук, потому что я не смог найти ни одну звуковую микросхему, которая все еще производится. Я реализовал простой генератор волн, который может генерировать треугольные, прямоугольные и пилообразные волны заданной частоты.
(Извините, если я допускаю ошибки, я пользуюсь переводчиком)
wish we could buy video card 😢
It is planned! 😄
I need to finish the implementation of the Verilog code first, which I will resume after finishing the motherboard documentation.
Ahh un français, tu peux faire une chaîne secondaire en français ?
Bonjour à toi et merci pour ton message!
Pour le moment, ce n'est pas prévu, les vidéos me prennent pas mal de temps à préparer, par contre l'ajout de sous-titres en français est tout à fait possible, j'essaie de le faire quand je le peux.
Cela pourra évidemment cahgner à l'avenir, en fonction de l'évolution du projet
So I guess my ears weren't wrong and you speak French.
@@jkobain You guessed right, I speak French! I guess my accent betrayed me 😄
@@Zeal8bit how many languages do you speak, i saw you respond in russian 😮
@@alexstone691 Four languages: French, English, Chinese Mandarin and Spanish. I can't speak Russian, I use Google translate for that