Creating an Operating System for the NES

Ғылым және технология

Download NESOS at notin.tokyo/nesos
NESOS is an operating system designed for the Nintendo Entertainment and Family Computer Systems. It was programmed in 6502 Assembly and compiled using CC65. This video covers how NESOS was made, including techniques used in programming the NES such as dealing with the Picture Processing Unit and saving data long term via NVRAM.
The operating system features two core applications, the word processor, and the settings. The word processor allows users to print characters and certain blocks to the screen, then save that data in the form of a file for later use or editing. The settings app displays system information and lets the user select one of seven cursors, and one of 53 possible desktop background colors. It also acts as the file manager, allowing users to delete their saved files.
NESOS uses 2K of NVRAM to save up to 8 files between sessions. The word processor is fully compatible with the Family Basic Keyboard giving every key functionality. Users may open their saved files on the desktop top by navigating to the correct file and pressing the A button. Holding the B button while over an icon and moving the mouse will allow the user to move both the files and the applications anywhere on the desktop.
The word processor may also be used without the Family Basic Keyboard. Using a standard NES or Famicom controller the user may type a character by pressing the A button. Holding A will cycle through all 64 possible characters that can be drawn on the screen. Pressing the B button will move the cursor forward in the document. Holding select with A will cycle the characters in reverse order. Holding Select with B will move the cursor backwards in the document.
I have updated NESOS since uploading this video, the latest version can be found at the link above.
NESOS also available at:
www.romhacking.net/homebrew/172/
Resources:
Windows 98 for Famicom (this is a Chinese mockup of Windows 98 for the Famicom/NES and isn't really functional)
archive.org/details/FCWIN98
NES Programming Resources:
www.nesdev.org/wiki/Nesdev_Wiki
NES CPU Memory Map
www.nesdev.org/wiki/CPU_memor...

Пікірлер: 1 200

  • @leomassafm160
    @leomassafm160 Жыл бұрын

    Now it truly lives up to the name "Family Computer".

  • @YetAnotherJohnSmith

    @YetAnotherJohnSmith

    Жыл бұрын

    Ok guys. He won the internet. We can all go home now. *as i stare off to the sky sipping on my coffee*

  • @meyers0781

    @meyers0781

    Жыл бұрын

    Well there was Family Basic which allows simple programming and even saving made apps to diskette

  • @magnus87

    @magnus87

    Жыл бұрын

    I would like a more powerful BASIC for FAMICOM, to really be able to make programs from the console and save them on a Datasette

  • @MiddleLevelLearning

    @MiddleLevelLearning

    Жыл бұрын

    400th like and 4th reply

  • @leomassafm160

    @leomassafm160

    Жыл бұрын

    @@MiddleLevelLearning congrats. who cares?

  • @BalancedSpirit79
    @BalancedSpirit79 Жыл бұрын

    This reminds me of the Contiki project. They wanted to make an NES able to surf the net and they were going to use the Zapper as a “mouse” but the project was never finished. Thank you for doing all this work. Making retro systems do great things in modern day is always fun. “Everything old is new again.”

  • @kreuner11

    @kreuner11

    Жыл бұрын

    Contiki works on C64, it has much more memory which means it's easier to do

  • @BalancedSpirit79

    @BalancedSpirit79

    Жыл бұрын

    @@mr_indie_fan Oh I have that faved already; that was insane!! :D

  • @mmazurr

    @mmazurr

    Жыл бұрын

    I'm really curious how that zapper thing would work. As far as I'm aware, the zapper doesn't actually "point" at something. It just checks if the place it's pointed to was the place the screen designated as "correct", which is why the screen flashes when you play the game, as the game is telling the zapper where the duck is. Maybe they could come up with something clever or maybe it didn't work out too well. Frankly it seems more difficult to get an NES to try to render HTML properly, and forget about having it interpret CSS or JS. Just HTML is pretty light, but still potentially too much for the NES to handle.

  • @stanb1455

    @stanb1455

    Жыл бұрын

    @@mr_indie_fan Of course, SuperRT is a piece of expansion hardware, these OS projects are only intended for running on Bone Stock consoles.

  • @kreuner11

    @kreuner11

    Жыл бұрын

    @@mmazurr contiki on the C64 renderd it at a snails pace, without the ability to scroll the site, just autoscrolling while interpreting HTML

  • @decrazyo
    @decrazyo Жыл бұрын

    Have you thought about adding support for the Famicom Disk System? I imagine you could load the whole OS into the disk cache at boot. Then the disk drive would be free for loading additional software, saving file, etc.

  • @keytester2733

    @keytester2733

    Жыл бұрын

    use the floppy to run dos OR make a mod for family basis where you can save stuff to a floppy (like a commodore 64 or smth)

  • @famitory

    @famitory

    Жыл бұрын

    the hardware of the FDS can be modified to allow for unrestricted disk rewriting but I don't know if emulators support that. it would be limited to only a portion of the disk being writable. I suspect a more compatible solution would be some kind of bankswitching in NVRAM

  • @Bobbias

    @Bobbias

    Жыл бұрын

    @@keytester2733 this is really cool. Keep up the awesome work!

  • @keytester2733

    @keytester2733

    Жыл бұрын

    @@Bobbias actually, it was just a idea, i dont know how to make or edit a nes game. i mean, it looks like just assembly, so i just have to technically just make a bootloader but NES compatible

  • @zulc22

    @zulc22

    Жыл бұрын

    @@famitory this is true, but not a problem if, instead of making an OS that "connects" to the FDS, you make the OS *run* on the FDS itself. totally not an easy task, but you could just write to the areas not taken up by the OS.

  • @DarkStar181992
    @DarkStar181992 Жыл бұрын

    I had a bootleg NES when I was a kid. It had an OS with GUI, multiple apps including a word processor, mouse and keyboard support. It felt like a home computer.

  • @admoran777

    @admoran777

    Жыл бұрын

    If only the real NES was the same…

  • @r0ckt3hc4sb4h

    @r0ckt3hc4sb4h

    Жыл бұрын

    Do you remember its name?

  • @Iamnotrandom565

    @Iamnotrandom565

    Жыл бұрын

    ​@@r0ckt3hc4sb4h windows 98 comes up in my mind

  • @yerdnAAA

    @yerdnAAA

    11 ай бұрын

    ​@@r0ckt3hc4sb4hIn Russia such bootleg NES was called "Magistr Repetitor" (Магистр Репетитор) and had bootleg Excel, Word, Basic

  • @freeculture

    @freeculture

    11 ай бұрын

    @@admoran777 One can only wonder why Nintendo of America decided to not bring the keyboard, cassette and later floppy to the US. There was a modem and printer too IIRC. The expansion port to plug those peripherals in the American NES is in the bottom.

  • @JiakunLi
    @JiakunLi Жыл бұрын

    在中国的1995年前后,有一种NES兼容机叫「小霸王学习机」。那部机器确实自带了OS系统,其中包含了Basic语言环境,带磁盘读写的文件操作。同时这个系统还包含了游戏编程,打字练习,文件处理等其他功能。感谢你让我回忆起了这些。

  • @me67galaxylife

    @me67galaxylife

    10 ай бұрын

    Ching chang

  • @MrLind87

    @MrLind87

    10 ай бұрын

    If you could watch the video that means you can understand English, so why did you write down your comment in Chinese?

  • @JiakunLi

    @JiakunLi

    10 ай бұрын

    @@MrLind87 因为我是中国人。

  • @MrLind87

    @MrLind87

    10 ай бұрын

    ​@@JiakunLiI am Costarrican but I'm not speaking in Spanish because of that lol

  • @sfeee2677

    @sfeee2677

    10 ай бұрын

    Translated by ChatGPT. In China around 1995, there was a NES-compatible console called the "Xiao Ba Wang Learning Machine." This machine indeed came with an operating system that included a Basic language environment and supported disk-based file operations. Additionally, the system featured game programming, typing practice, file management, and other functionalities. Thank you for bringing back these memories.

  • @NathanielBandy
    @NathanielBandy Жыл бұрын

    This is super cool, definitely gonna try itout

  • @SirLiamTheGreat

    @SirLiamTheGreat

    Жыл бұрын

    nathanl b

  • @patrickst_ar

    @patrickst_ar

    Жыл бұрын

    is this Nathaniel B?

  • @rrq

    @rrq

    Жыл бұрын

    @@patrickst_ar yeah that is

  • @movedsm1332

    @movedsm1332

    Жыл бұрын

    OMG NATHANIEL BANDY!!!! :D

  • @Asteroid473

    @Asteroid473

    11 ай бұрын

    Community: “This project is super niche, but really cool! It deserves more attention.” Random person scrolling through KZread: “Oh that looks cool, I’m probably going to check that out”

  • @BrowncoatInABox
    @BrowncoatInABox Жыл бұрын

    3:28 of all the things I was not expecting to learn in a video about a operating system for an NES. This is definitely one of them

  • @alvallac2171

    @alvallac2171

    Жыл бұрын

    *an operating (because "operating" starts with a vowel sound) *NES, this (to fix your sentence fragment)

  • @BrowncoatInABox

    @BrowncoatInABox

    Жыл бұрын

    @@alvallac2171 I was on the moon when I wrote that comment and I regret nothing

  • @PhantomOfficial07

    @PhantomOfficial07

    Жыл бұрын

    @@alvallac2171 You're being pedantic and annoying.

  • @stellarbastard98

    @stellarbastard98

    Жыл бұрын

    @@alvallac2171 first grammar comment I see that isn't rude and actually explains the logic behind the correct spelling, well done!

  • @entx8491

    @entx8491

    Жыл бұрын

    @@stellarbastard98 It's never really ever been rude, we just live in a society that now believes it's uncool to write properly. Hence his ungrateful excuse as a response.

  • @jadeglaze3390
    @jadeglaze3390 Жыл бұрын

    Super cool project! Here’s a relatively straightforward compression idea for your saved files: Since your alphabet is only 64 characters, you only need at most 6 bits per char, not a full byte of 8. This means you can store an 832 char file in 624 bytes with some bit shifting and masking. That’s 13 files in 8kb! And that’s keeping it relatively simple. If you want to really stretch your 6502 chops, you could implement Hoffman coding compression and allow variable length files (just have the first two bytes or so - technically 10 bits is enough- be the file length). Or a compromise: more compact than fixed 6 bytes per char but simpler than full on Hoffman coding: make a predetermined variable length encoding- like a precomputed Hoffman table or something similar to UTF-8 but alternating between 4 and 8 bits per char instead of 8 and 16 bytes per char.

  • @jadeglaze3390

    @jadeglaze3390

    Жыл бұрын

    Wait! Better idea for variable file size: the first few bits of the file should represent a length in _chunks_ that the file requires where the chunks are known size. So for example: first 4 bits of the file represents the number (1-16) of 39 byte chunks (16*39=624) that the file occupies.

  • @kargaroc386

    @kargaroc386

    Жыл бұрын

    Yeahhhh but the 6502 would probably choke on any of that stuff. It would work but would you want to use it? I guess when the platform is 8 bits the answer is always yes

  • @greenaum

    @greenaum

    11 ай бұрын

    @@kargaroc386 I see OP's point about saving 2 bits, it's an idea worth considering if this were a serious project and you wanted an ALL-CAPS word processor for the NES. It'd need as much space for docs as you could get. Huffman compression is something else. Certainly 6502s can do it, and did, back in the '80s. But it's a pain in the arse to get your head round and you wouldn't want to have to debug it. Depends how clever you are. Really though you can't just have all-caps. There must be a way to extend the tile table. Games did it, although often using scanline interrupts which wouldn't be suitable when you'd want mixed case in all the text. Maybe try something clever using sprites for the extra letters? That'd get complex I think and you'd have to do it on the fly. Then again the ultimate Atari 2600 hack turned out to be having a cart that bangs hard on the machine's data lines. You set the data lines to high, I think, and the cart can drag them down to 0 with enough current. Yeah I doubt it's good for the old gal but maybe they built 'em tough back in NMOS or whatever. They drove the graphics chip hard and got more sprites than you were allowed out of it, looked amazing admittedly and could have been done at the time. But I wouldn't wanna be the guy i the shop when your cart breaks somebody's Atari and there's a queue of them lining up all with the same problem. Sorry what's the moral of the story? Abuse the hardware? Sometimes that worked out well.

  • @niallmcardle7

    @niallmcardle7

    10 ай бұрын

    Take your bytes, and your goals will come!

  • @tnomad
    @tnomad Жыл бұрын

    This is a cool project. To be a bit pedantic it's not really an OS, it's really a GUI text editor. For it to be an OS I think you'd have to either have to expose some kind of API to make additional apps that run within it or find some way to load in and execute games, which I know the latter would be quite difficult. That's not to diminish that it's an interesting project and a good video explaining some of the technical issues of working on the NES.

  • @InkboxSoftware

    @InkboxSoftware

    Жыл бұрын

    You're right that it's not quite an OS in the sense of not having an API for other programs to use. But I think it wouldn't be that hard to include some way to have games as well (they'd just have to built into the program). The way the "apps" of the system work is when the user clicks on them it only runs that section of code, so it wouldn't be hard at all to create a game and then place an icon on the desktop for the user to launch it. Even including large games wouldn't be hard because I've actually written this program with the MMC3 mapper (a bit overkill for what I needed) so even if the game required two full pages of CHR ROM you could just switch to the game's section when it launched. To be honest it never occurred to me to write a game into the system (instead I was debating whether or not to build a spreadsheet app), but I think that would have been a nice improvement to the system. Loading games could potentially work with the use of the Family Keyboard's Cassette reader, or using the Famicom Disk System, so it wouldn't be impossible.

  • @DJMotorbike

    @DJMotorbike

    Жыл бұрын

    @@InkboxSoftware It would be neat if as a built in game you included a "port" of one of those old LCD Game & Watch games. Weather that's possible or not, I don't know. I'm not a programmer. Or Tetris would be cool too.

  • @vuurniacsquarewave5091

    @vuurniacsquarewave5091

    Жыл бұрын

    Fun thing is that the Intellivision actually had a sort of "BIOS" or really a standard library of functions sitting on a built-in ROM for games to use. That is one step closer to that sort of thing.

  • @brandontechnerd

    @brandontechnerd

    Жыл бұрын

    @@vuurniacsquarewave5091 Same as the INT BIOS calls in x86 IBM PC systems

  • @istrasci

    @istrasci

    Жыл бұрын

    I should have read this comment before posting essentially the same thing.

  • @marioalfonsoarreolaa.flore2882
    @marioalfonsoarreolaa.flore2882 Жыл бұрын

    Not bad at all. Mad respect. You accomplished a lot even with the system limitations. In the current state it could work as a weekly journal.

  • @samaiello7543
    @samaiello7543 Жыл бұрын

    Dude, criminally underrated channel. Found you through your Emerald Ambulation video, and been going through others as they pique my interest. The passion is here and your graphics and explanations help me actually understand things I’ve always had an interest in, but know nothing about, or where to start. Thank you, and I hope the best for you & your channel.

  • @notthatfatboy6519
    @notthatfatboy6519 Жыл бұрын

    I love seeing people take the old systems I grew up on and still doing new stuff with them. Thank you for this awesome and informative video!

  • @steventechno
    @steventechno Жыл бұрын

    I love seeing such obscure stuff like this. A simple 80's styled GUI-based OS for a console from the 80's. really has that vintage computer vibe going for it. Nice work! The advantage of this is the files are stored on the cartridge itself, so if you had notes and wanted to view them on another console, just plop that bad boy into another and you're set. Great concept!

  • @joedirt3563

    @joedirt3563

    Жыл бұрын

    I do not recall the name but there is some thing like this for modern computers that's basically a mobile Linux OS on a flash drive.

  • @dasheru

    @dasheru

    Жыл бұрын

    @@joedirt3563 livecd?

  • @joedirt3563

    @joedirt3563

    Жыл бұрын

    @@dasheru that might have been it. I can try and find if your interested.

  • @dasheru

    @dasheru

    Жыл бұрын

    ​@@joedirt3563 nah, I'm good. "livecd" is just the blanket term for an external storage device that has a bootable OS installed on it.

  • @stupidfuckingrat

    @stupidfuckingrat

    Жыл бұрын

    @@joedirt3563 livecd doesn’t let you save anything permanently. It’s like you install it on a flash drive.

  • @popyui7497
    @popyui7497 Жыл бұрын

    Incredible!, what an accomplishment for an 8 bit computer from the 80's

  • @flyinghippo5767
    @flyinghippo576711 ай бұрын

    This video is even cooler than I was expecting. Not only do you break everything down really well, but integrating NESOS into your presentation is really clever!

  • @DavidSikesII
    @DavidSikesII Жыл бұрын

    This is very cool. I would love to see some details about what it took to implement some of these things in code. Seeing how programming for the NES works in-depth would be very nifty.

  • @itsgruz
    @itsgruz Жыл бұрын

    This is an amazing project and a fantastic video! Hope to see this evolve!

  • @istrasci

    @istrasci

    Жыл бұрын

    What up gruz!! You're awesome!

  • @AndyBrearley

    @AndyBrearley

    Жыл бұрын

    Game Genie codes for NESOS… 😅

  • @Typical.Anomaly

    @Typical.Anomaly

    Жыл бұрын

    @@AndyBrearley BGATES = A blue screen?

  • @AndyBrearley

    @AndyBrearley

    Жыл бұрын

    @@Typical.Anomaly 😂

  • @promaster424
    @promaster424 Жыл бұрын

    Finally, one of my dream projects became a reality. I hope that you will continue working on this project and add more programs like a calculator, a painting program or at least a support for colored tiles on the word processor and a calendar or a clock if the battery can handle keeping track of them at all time

  • @goofbug5328
    @goofbug5328 Жыл бұрын

    Wild how such an amazing channel has so few subscribers, really interesting work!

  • @mattgio1172
    @mattgio1172 Жыл бұрын

    WowoW!!!! I'm so happy to see your channel finally getting the credit it deserves - this video blew up!!! I've been a huge fan ever since I saw your level on Kosmic's channel - I can't wait to see what else you do :)

  • @mastersummersjr
    @mastersummersjr Жыл бұрын

    Very clever use of a system not at all designed for a general purpose OS. Awesome work, man!

  • @suntannedduck2388
    @suntannedduck2388 Жыл бұрын

    This is very cool. Very good use of limitations for sure. I bet a fair amount of time and effort to get it running as it is, working with the difference to today with sprites and code.

  • @SamCampbell
    @SamCampbell11 ай бұрын

    This is awesome! I'm always floored by the ingenuity of custom ROMs like this.

  • @kanesmith8271
    @kanesmith8271 Жыл бұрын

    Good to see that the new generation of creative minds has finally matured

  • @ocpmovie
    @ocpmovie Жыл бұрын

    Computer operating systems have existed for the NES/Famicom almost since its debut -- the original Family Basic from Hudson Soft, and the many unlicensed "educational" Subor/Dendy multicarts which included (versions of) it later on (FBASIC, GBASIC). I've been meaning to translate "Bravesoft Windows 2000" which is one of those, and has several apps. There is some graphics compression we've had to undo first. People on KZread have dismissed the Chinese/Russian NES Windows "knockoffs" as non-functional, but they're not. A lot of the "functionality" is fake and just for show, but the applications are not -- and include takes on Word, Excel, DOS, and of course Family Basic (and its background art program, message board and music programs). And so on. Some of the later carts do a decent job of being an 8-bit computer, albeit in a style which was 20 years out of date at that time. Homebrew Family Basic programs were published in magazines at the time, and Gaming Alexandria has been trying to preserve them lately.

  • @ocpmovie

    @ocpmovie

    Жыл бұрын

    @@destructodisk9074 No, you have misunderstood based on a lack of experience with this stuff.

  • @Stillxxen

    @Stillxxen

    Жыл бұрын

    When I was smol kiddo, I've had nes knock off on keyboard, and cartridge which came with this System had Text Editor, music Player and educational games to which I was "forced" to play xD. I wish that I could have this thing again. I think that it was GLK-20XX. It looks like something I had :). Greetings!

  • @-Juba-

    @-Juba-

    Жыл бұрын

    @@Stillxxen Same here

  • @eddievids5033

    @eddievids5033

    Жыл бұрын

    @@Stillxxen me too! it was great! The text editor even have printing functionality.

  • @Stillxxen

    @Stillxxen

    Жыл бұрын

    @@eddievids5033 wow, my wasn't so advanced :D. I could write, But without "printing" Part.

  • @MrMegaManFan
    @MrMegaManFan Жыл бұрын

    This is certainly more functional than that “Windows 95” for NES that was just a mock-up of a desktop with no real abilities.

  • @CrappyMusic-cb6bl

    @CrappyMusic-cb6bl

    7 ай бұрын

    Well the windows 2000 version had some functionality if you played it on either a Famicom with a family keyboard, or a bootleg famiclone keyboard.

  • @rockkiall
    @rockkiall Жыл бұрын

    Incredible work! I am glad you save some space for more in the future.

  • @EricGranata
    @EricGranata Жыл бұрын

    Pretty rad! 😮 Edit: Congrats on the Engadget article! I think you had like, 16 subscribers a couple of weeks ago? Glad to see your channel get some traction. Keep up the great work!

  • @carecoable
    @carecoable Жыл бұрын

    I never thought somebody would do something like this, but hey here we are. Quite interesting work! I wonder if you're planning on making this open source, since I think there are some people that might've thought of an implementation or two while watching this video, so making it open source can lead to more interesting things happen. Good stuff!

  • @alysdexia

    @alysdexia

    Жыл бұрын

    “that”

  • @RonLaws

    @RonLaws

    Жыл бұрын

    I was thinking on how someone could adapt it to work in something akin to a game genie, allowing you to plug in application cartridges :) not that i'd even begin to know where to start myself, but i could imagine someone who does taking it to that next level.

  • @pinkie723

    @pinkie723

    Жыл бұрын

    @@RonLaws *lock on technology!!!!* 🤯

  • @goranjosic
    @goranjosic Жыл бұрын

    Man this is so underated! More people need to see this video! :)

  • @maxios-7613
    @maxios-7613 Жыл бұрын

    its so amazing that there is people who comes with these ideas and actually make it happen

  • @KartKing4ever
    @KartKing4ever Жыл бұрын

    Some of the coolest stuff I've ever seen done on an NES.

  • @GXSCChater
    @GXSCChater Жыл бұрын

    Nice Stuff very cool! Great coding skills and nice options, I like the idea of deleting 1 byte to cancel a file instead overwriting the whole file.

  • @jengelenm
    @jengelenm Жыл бұрын

    What a cool idea! And relatively logical progress for the NES at the same time. Given the 6502 was used in commodore 64 and numerous other old machines. Those had GEOS, so we already know it’s possible. Good job!!!!

  • @megapro1725

    @megapro1725

    Жыл бұрын

    Change your profile pic

  • @XENON2028

    @XENON2028

    Жыл бұрын

    @@megapro1725 dude he doesn't have to

  • @megapro1725

    @megapro1725

    Жыл бұрын

    @@XENON2028 nobody has to put terrorist state flag in

  • @XENON2028

    @XENON2028

    Жыл бұрын

    @@megapro1725 dude omfg people don't think the same as you, I don't think they are a terroris t state, so I can put it if I like, you can scream all you want but me and him probably woon't change it ever

  • @elimalinsky7069

    @elimalinsky7069

    11 ай бұрын

    The NES has only 2 KB of RAM, which is a severe limitation. Although most of the data can be stored on ROM, an OS needs a lot of memory for variables, hence why 2 KB is not enough for a GUI OS, and also why this not actually a full OS, but just a neat proof of concept.

  • @ironrion
    @ironrion Жыл бұрын

    What a remarkable feat. Subbed for this video. Thank you so much for creating badass content like this

  • @Captureman
    @Captureman Жыл бұрын

    Thank you for experimenting with the NES. I love what you do!

  • @GabrielPerboni
    @GabrielPerboni Жыл бұрын

    Excellent! I really liked everything, but my favorite part was that you ask the CPU politely. Kindness is an important virtue and it never hurts to practice it. Good job!

  • @draconic5129
    @draconic5129 Жыл бұрын

    One thing you should definitely add is a tracker to be able to make songs with the Famicom sound chip, maybe even be able to use the keyboard as a music keyboard (I've seen similar things done on other '80s computers).

  • @draconic5129

    @draconic5129

    Жыл бұрын

    @MagicJungle7053 I wasn't talking about using sound samples I was just talking about using the sound chip's voices.

  • @theconfusingwords
    @theconfusingwords Жыл бұрын

    This is an impressive project you pulled off here, thanks for sharing

  • @grantm7046
    @grantm704610 ай бұрын

    Ever since I found out about the expansion slot on the bottom, I’ve wondered when someone would do something like this. This is truly incredible

  • @michaelwarner7815
    @michaelwarner7815 Жыл бұрын

    So, one thing you can do to help extend the storage capacity is to implement NVRAM paging. Your Zero page would contain your file allocation table for the page numbers and specific addressing spaces.

  • @Bro3256
    @Bro3256 Жыл бұрын

    I'm curious if you could possibly add support for the Famicom Data Recorder? Being able to save files on tape (or through digital audio recordings) would work pretty well as the Family Basic keyboard already has that functionality for read and write.

  • @Bro3256

    @Bro3256

    Жыл бұрын

    (NESOS more like FamiOS am I right)

  • @doomedtoobscurity3965

    @doomedtoobscurity3965

    Жыл бұрын

    @@Bro3256 we need a snesos and an n64os

  • @AD-2020
    @AD-202010 ай бұрын

    I've often wondered about this. Well done on doing this and thanks for sharing

  • @mystikgaming9016
    @mystikgaming9016 Жыл бұрын

    This is actually insane! Great job man. This is really cool 😎

  • @UnrealSolver
    @UnrealSolver Жыл бұрын

    I love to watch people with skills to build something like this, you deserve more subs and attention 🍻 That’s hella cool 🔥

  • @xBruceLee88x
    @xBruceLee88x Жыл бұрын

    I wonder if you could add a basic calculator to it Pretty neat that you got it working this well

  • @Determinator21

    @Determinator21

    Жыл бұрын

    You could make a calculator with that

  • @idiotontheweb

    @idiotontheweb

    Жыл бұрын

    Everyone gangsta until you divide by 0

  • @xBruceLee88x

    @xBruceLee88x

    Жыл бұрын

    Then multiply by -0

  • @QuantumScratcher

    @QuantumScratcher

    11 ай бұрын

    @@xBruceLee88x -0 doesn't exist, the closest you can get is multiplying by 0

  • @JeoshuaCollins

    @JeoshuaCollins

    11 ай бұрын

    ​@@QuantumScratcher IEEE Standard for Floating-Point Arithmetic (IEEE 754) has entered the chat: "Moreover, there are two zero values, called signed zeros: the sign bit specifies whether a zero is +0 (positive zero) or −0 (negative zero)."

  • @lenzanari
    @lenzanari Жыл бұрын

    That is incredible! Now the final touch is to put this in a reproduction cartridge and print a custom nes box for it. Great job!

  • @CerisuHakka
    @CerisuHakka Жыл бұрын

    I'm kind of surprised Nintendo didn't produce any software that utilized the Famicom Keyboard beyond a simple BASIC interpreter. Imagine a reality where a fully-realized, true-to-its-name Family Computer with dial-up connectivity and a suite of productivity applications might have become a staple of Japanese life in the '80s.

  • @stephblackcat
    @stephblackcat Жыл бұрын

    Would be cool to have something like this that runs from FDS and can write to QDs so you can save stuff legitimately. Of course that would greatly increase demand for QDs.

  • @metal_bird
    @metal_bird Жыл бұрын

    Very cool! Awesome work on the implementation and explanation!

  • @WSNO
    @WSNO Жыл бұрын

    This is brilliant. Would love to see this idea expanded upon and to see a cartridge i could run on my own NES someday

  • @Cyber_Akuma
    @Cyber_Akuma Жыл бұрын

    Maybe for loading of programs/files and even saving them you could use the Famicom Data Recorder? It's a bit of an obscure piece of hardware, but the Famicom had an audio cassette data recorder similar to computers from the 70s and 80s at the time, that feature was left over in some NES versions of games like Excitebike, which is why they have a "save" and "load" feature that doesn't do anything.

  • @vampiric162
    @vampiric162 Жыл бұрын

    What would be cool would be if you could make a custom board for the expansion port and have the OS run off the custom board, and maybe putting more RAM on the custom board. Also when the custom board is plugged in it instantly boots up into the OS.

  • @lugxnyt2310

    @lugxnyt2310

    Жыл бұрын

    Yeah it'd be cool to see how a Raspberry Pi Pico/Zero could be used in a NES, or Famicom.

  • @vampiric162

    @vampiric162

    Жыл бұрын

    @@lugxnyt2310 yup

  • @mattzocrazy123
    @mattzocrazy123 Жыл бұрын

    This is quite literally the single coolest piece of nes homebrew I've ever seen, the possibilities of this could be endless, I can imagine how sick a homebrew loader, like an everdrive or whatnot could be with an actual gui interface like this, obviously that would require a lot of effort but this is incredible nonetheless, I don't think Nintendo engineers of the time ever would've thought something this advanced would be possible on the NES.

  • @Schule04

    @Schule04

    2 ай бұрын

    Nintendo made Family Basic, which is far more advanced than this.

  • @sdjhgfkshfswdfhskljh3360
    @sdjhgfkshfswdfhskljh3360 Жыл бұрын

    It's fun to do something first, and then think about why you did it and how it can be used in practice.

  • @SireSquish
    @SireSquish Жыл бұрын

    Please do one for the master system so that we can argue about which one is better.

  • @tombert512
    @tombert512 Жыл бұрын

    This is super cool. I know the NES had an Arkanoid pad, implying that there was *some* way to get analog inputs in there. Have you considered adding something akin to mouse support?

  • @adamp9553

    @adamp9553

    Жыл бұрын

    Technically the SNES mouse can be used with the NES. It's the same tech. Only the plug needs to be changed.

  • @LongueQueueChat3

    @LongueQueueChat3

    Жыл бұрын

    @@adamp9553 wow

  • @kip258
    @kip258 Жыл бұрын

    My man used my favorite music from all my favorite obscure NES games. Lunar Pool and Gun Nac are two that I have in my collection!!

  • @NOPerative
    @NOPerative Жыл бұрын

    Brilliant. Excellent study in resource management. Very impressive.

  • @tehrobotjesus
    @tehrobotjesus Жыл бұрын

    Nice work. Years ago I made a simple command line interface for the NES. I added a PS/2 keyboard interface to the cartridge though, instead of using the famicom keyboard. It could launch a very spartan brainf*** interpreter along with a couple game demos. I also called it NES-OS :)

  • @user-sf6xg2so7t
    @user-sf6xg2so7t Жыл бұрын

    Hello. More recently, an idea arose how, based on the idea of Famicom / NES, we can sell a new set-top box again, using old technologies. I think that you just need to take an 8-bit processor and create your new console taking into account the latest achievements: 4 ports for gamepads, a port for playing over a local network, a slot for a micro SD card up to 128GB, built-in weak hardware + a black and white screen in the gamepad itself to create a separate portable console on batteries / accumulators, support keyboard + mouse, light gun and transformer steering wheel (car, motorcycle, helicopter, boat and spaceship). And the most important thing in our future console is that it will make nostalgic adults buy our console again and again: 1)The same Operating System from your video. 2) And the coolest thing is the built-in game designer without programming. To date, the most convenient for me is the program for creating games Scirra Construct2. It is its weaker counterpart that can be assembled for our console. A little about myself: My name is Vitaly Orlov, I am 44 years old, I am an experienced game designer-screenwriter + 2D and 3D artist + pixel art animation + developer of 2d games on the same Scirra Construct 2. Data for contacting me. Skype: VitaliyOrlov3 Mail: scorpion438@yandex.ru There is also a concept of how to create a unique portable gaming console from a Rubik's Cube in the style of the recently released "PlayDate" with its handle on the side.

  • @WildVoltorb

    @WildVoltorb

    Жыл бұрын

    Sounds cool

  • @RetroJack
    @RetroJack Жыл бұрын

    Just downloaded it - looking forward to trying it!

  • @TheWigglyLine
    @TheWigglyLine Жыл бұрын

    1.18k subscribers... you're going to be famous soon... I'm calling it! 🤞

  • @xaxabogbart

    @xaxabogbart

    Жыл бұрын

    Hehe probably! - bit random but I also found his nerdy voice super hot 😈 I'm a bit of an oddball

  • @russellg5022
    @russellg5022 Жыл бұрын

    "Why?" A better question would be "how?" *Proceeds to answer the question "what?"*

  • @f4keinternetgrll820
    @f4keinternetgrll820 Жыл бұрын

    Should have called it NEOS (Nintendo Entertainment Operating System)

  • @TechLokal
    @TechLokal Жыл бұрын

    Excellent work, man! :) Your channel is about to blow up. 🙌

  • @plumjet0930
    @plumjet0930 Жыл бұрын

    Congrats on 1K!

  • @piousminion7822
    @piousminion7822 Жыл бұрын

    Why in Kanji if the NES was made for an English market? Would make more sense if you built "FamiconOS" instead of NESOS.

  • @sirkastic
    @sirkastic Жыл бұрын

    This is an app. Not an OS

  • @GDT-Studio

    @GDT-Studio

    18 күн бұрын

    An app requires an OS

  • @sirkastic

    @sirkastic

    16 күн бұрын

    @@GDT-Studio And an OS runs Apps. Show me an App this runs

  • @TheRogueMaverick
    @TheRogueMaverick Жыл бұрын

    The quality heavily reminds me of The 8-Bit Guy! And that is NOT a bad thing! His channel is my all-time favourite! What I mean by that is the technical information is presented in a more friendly manner while not compromising the in-depth side!

  • @mathskadarr254
    @mathskadarr254 Жыл бұрын

    An excellent video turned out, everything is well thought out, a very clear instruction turned out)))

  • @joshuajerome1997
    @joshuajerome19974 ай бұрын

    can you please fix it most emulators on pc don't want to run it when it does it has like 9999 ways of crashing. it says there's a cpu error

  • @b3ans4eva
    @b3ans4eva Жыл бұрын

    Does it run DOOM? :p

  • @totallybonkers76

    @totallybonkers76

    Жыл бұрын

    LMAO! 🙂

  • @Abraham_doestech
    @Abraham_doestech Жыл бұрын

    Man that's beautiful. Well done

  • @diegomayfield4751
    @diegomayfield4751 Жыл бұрын

    It's amazing what nerds can do in their spare time ! This is awesome!

  • @finkelmana
    @finkelmana11 ай бұрын

    What a complete waste of time and effort for something absolutely useless and serves no purpose at all. I love it.

  • @fuarkstyle
    @fuarkstyle9 ай бұрын

    wow impressive stuff. People are creating in all the consoles, amazing!

  • @vampirelegs
    @vampirelegs Жыл бұрын

    This is so cool and I can't wait to try it out!

  • @namco003
    @namco00311 ай бұрын

    My kid is getting into hardware and engineering type stuff. Gonna use some of your tutorials and see what we can come up with this summer

  • @pierorago2353
    @pierorago2353 Жыл бұрын

    subscribed. youre awesome buddy. cant wait to see what you do in the future.

  • @sdjhgfkshfswdfhskljh3360
    @sdjhgfkshfswdfhskljh3360 Жыл бұрын

    This video made me think about what criteria can be used to separate operating systems and regular programs.

  • @SamLabbato
    @SamLabbato Жыл бұрын

    who could forget the NESOS paint app. I used to use that all the time back in the day.

  • @alejandrovivas1027
    @alejandrovivas1027 Жыл бұрын

    What a legend only one ad in the beginning . Your so damn underrated

  • @idioticcake342
    @idioticcake342 Жыл бұрын

    Wow, this is really cool. Nice work!

  • @jamesfloyd6693
    @jamesfloyd6693 Жыл бұрын

    it's like over complicated post it notes. I love it

  • @notanimposter
    @notanimposter Жыл бұрын

    I’d been meaning to make something like this! Great work!

  • @evanbarnes9984
    @evanbarnes9984 Жыл бұрын

    Damn this is cool! I don't have an NES and will probably never have a chance to try this, but it's seriously impressive

  • @douglasemsantos
    @douglasemsantos Жыл бұрын

    Wow! Great work! Congrats!

  • @TrevinAdams
    @TrevinAdams Жыл бұрын

    This is really neat! Awesome job!!!

  • @Gunbudder
    @Gunbudder Жыл бұрын

    i love a good bespoke OS. one of my professors in college created a full OS for the arduino uno just to see if it was possible. it was barely functional, but it worked (with task switching)!

  • @CesarRosasJr
    @CesarRosasJr Жыл бұрын

    Okay, this was pretty cool, great work!

  • @ZeroStako
    @ZeroStako Жыл бұрын

    This was very interesting. Thank you for sharting.

  • @superbritbros.5793
    @superbritbros.579311 ай бұрын

    This was fantastic! Thanks for sharing

  • @asadityas67
    @asadityas67 Жыл бұрын

    This is a beautiful project

  • @CableWrestler
    @CableWrestler Жыл бұрын

    Congratulations for hitting the algorithm 💪🏻

  • @therealsnowwhite1937
    @therealsnowwhite1937 Жыл бұрын

    Reminds me of those mock OSes that come with Famiclones mimicking that of Windows 98 and later.

  • @Strange_Armour
    @Strange_Armour Жыл бұрын

    This is - beyond a doubt - a true testament to the power of boredom. Kudos 👍

  • @retsapb6319
    @retsapb6319 Жыл бұрын

    This is insanely cool

  • @EthanMLego
    @EthanMLego7 ай бұрын

    This is amazing! I always thought about someone doing this.

  • @Evert_Abrahamsson
    @Evert_Abrahamsson Жыл бұрын

    This is such a underrated and good chanel keep up the great work and it will blow up soon. Thanks for a really interesting amd entertaning. Im gonna try the os on a emu. And i have learned how a snes and os works. Sry for bad typing im dyslexic and dont that good at English 😅

Келесі