[{"data":1,"prerenderedAt":375},["ShallowReactive",2],{"project-45715055":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":36,"aspects":37,"strip":44,"post_text":46,"what":47,"said":94,"maker_in_thread":183,"shape":196,"grid":200,"attempts":337,"same_week":338,"maker_shows":39,"maker_hidden":367,"reader_version":368,"card":369},"45715055","MyraOS","My 32-bit operating system in C and ASM (Hack Club project)","title","Show HN: MyraOS – My 32-bit operating system in C and ASM (Hack Club project)","https:\u002F\u002Fgithub.com\u002Fdvir-biton\u002FMyraOS","github.com","dvirbt",1761511420,2025,247,55,240,3837,7,"notable","infrastructure","hobby operating system","other",[24,25,26,27,28],"operating system","osdev","x86 kernel","hobby os","doom port","mixed",0.382,{"positive":32,"neutral":33,"mixed":34,"critical":35},11,12,0,3,26,{"execution":38,"idea":40,"performance":41,"design":43},{"positive":39,"critical":39},1,{"positive":39,"critical":34},{"positive":34,"critical":42},2,{"positive":39,"critical":34},[45,34,45,45,34,45,45,45,35,34,35,35,35,34,34,35,39,34,39,34,35,34,34,35,34,35,45,45,34,34,34,45,34,34,35,34,34,39,45,35],5,"Hi HN, I’m Dvir, a young developer. Last year, I got rejected after a job interview because I lacked some CPU knowledge. After that, I decided to deepen my understanding in the low level world and learn how things work under the hood. I decided to try and create an OS in C and ASM as a way to broaden my knowledge in this area.\n\nThis took me on the most interesting ride, where I’ve learned about OS theory and low level programming on a whole new level.  I’ve spent hours upon hours, blood and tears, reading different OS theory blogs, learning low level concepts, debugging, testing and working on",{"problem":48,"audience":54,"pricing":62,"motivation":63,"time_to_build":67,"stack":71,"openness":91,"stage":92,"team_size":93},{"value":49,"source":50,"evidence":51},"Learning low-level systems and how an operating system works under the hood","maker",[52],{"id":53},"post",{"value":55,"source":56,"evidence":57},"Hackers and developers interested in low-level programming and OS development","inferred",[58],{"id":59,"by":60,"text":61},"45717705","iezepov","I'd go for something more technical, it feels like your target audience are hackers and not people shopping for an OS. But as always, it's your project done for yourself, so…",null,{"value":64,"source":50,"evidence":65},"Deepen low-level CPU and OS knowledge after a rejected job interview; built for Hack Club Summer of Making",[66],{"id":53},{"value":68,"source":50,"evidence":69},"About 7 months of work",[70],{"id":53},[72,76,80,84],{"value":73,"source":50,"evidence":74},"C",[75],{"id":53},{"value":77,"source":50,"evidence":78},"Assembly",[79],{"id":53},{"value":81,"source":50,"evidence":82},"GRUB bootloader",[83],{"id":53},{"value":85,"source":50,"evidence":86},"DoomGeneric",[87,88],{"id":53},{"id":89,"by":11,"text":90},"45721421","Yes it is playable, I made an API for window graphics which gives every window the ability to render stuff on it’s surface. Then I used DoomGeneric to port my graphics API to Doom.","open_source","launched","solo",{"praise":95,"objections":107,"requests":133,"questions":149,"alternatives":164},[96],{"value":97,"source":98,"evidence":99},"Good code and a fresh contrast to vibe-coded projects","commenter",[100,103],{"id":101,"by":60,"text":102},"45717730","This feels like a fresh breath of air after all \"I vibe coded this in 4 hours with Claude\". Don't get me wrong, vibe coding had its own place, but it feels that projects like…",{"id":104,"by":105,"text":106},"45717820","noduerme","This is quite amazing. I'm not anything like a serious C coder and haven't tried ASM. I've written \"filesystems\" in higher level languages (stuff that imposed a directory…",[108,122],{"value":109,"source":98,"evidence":110},"Using 128MB RAM was not enough; the OS seems memory-hungry",[111,115,118],{"id":112,"by":113,"text":114},"45715736","userbinator","wrongfully assuming 128MB for the whole OS was enough If I were you I'd investigate why it needs so much. Keep in mind how much functionality older OSs had, and how much…",{"id":116,"by":113,"text":117},"45717612","Doom was released in 1993. 128MB of RAM wouldn't even fit in the typical mobo of the time. http:\u002F\u002Fwww.dosdays.co.uk\u002Ftopics\u002F1993.php",{"id":119,"by":120,"text":121},"45723964","zeusk","Double buffering a 4K 4bpp framebuffer itself is 64mb",{"value":123,"source":98,"evidence":124},"Targets legacy 32-bit x86 and BIOS rather than modern x86_64\u002FUEFI",[125,129],{"id":126,"by":127,"text":128},"45718330","noone_youknow","This is really great work! Always impressed to see hobby OS projects that get this far, well done. That said, I’m once again reminded that we sorely need some updated resources…",{"id":130,"by":131,"text":132},"45720108","trollbridge","Yes. This stuff needs to be retargeted at x86_64 (on EFI, too) and ARM. Of course, also supporting i386 with legacy BIOS is OK, but it doesn't really get into the meat of what…",[134,141],{"value":135,"source":98,"evidence":136},"Provide an ISO and work with copy.sh\u002Fv86 to run in the browser",[137],{"id":138,"by":139,"text":140},"45715571","Imustaskforhelp","Hey, what an amazing project, bravo! i would suggest to providing an iso or co-operating \u002F looking into copy.sh which provides a large number of iso files which you can boot\u002Fplay…",{"value":142,"source":98,"evidence":143},"Make a technical YouTube demo video",[144,148],{"id":145,"by":146,"text":147},"45716579","maxpert","Would recommend making a good youtube video with demo.",{"id":59,"by":60,"text":61},[150,157],{"value":151,"source":98,"evidence":152},"How the graphics stack works and whether Doom is playable with software rendering",[153],{"id":154,"by":155,"text":156},"45721271","Levitating","How did you handle the graphics stack? Is DOOM playable on just software rendering?",{"value":158,"source":98,"evidence":159},"How memory usage was measured",[160],{"id":161,"by":162,"text":163},"45723730","MisterTea","> ... and the Qemu not having enough (wrongfully assuming 128MB for the whole OS was enough). Interesting that 128 MB was not enough. What did you do to find this issue and how…",[165,169,176],{"value":166,"source":98,"evidence":167},"copy.sh\u002Fv86",[168],{"id":138,"by":139,"text":140},{"value":170,"source":98,"evidence":171},"TempleOS",[172],{"id":173,"by":174,"text":175},"45715866","MarcelOlsz","Awesome. Should take a look at TempleOS as well.",{"value":177,"source":98,"evidence":178},"OSHub hobby OS list",[179],{"id":180,"by":181,"text":182},"45718721","joexbayer","Wow! Looks great! Id suggest checking out https:\u002F\u002Foshub.org\u002F it has a lot of hobby operating systems similar to this one.",{"comments":184,"answered":185,"key":186},18,4,[187,190,193],{"id":188,"text":189},"45717420","Thanks! I’ll look into it",{"id":191,"text":192},"45718698","Thank you and good luck!",{"id":194,"text":195},"45717404","I really hope so! :)",{"commenters":197,"max_depth":18,"maker_replies":184,"first_comment_mins":198,"lifespan_hours":199},30,85,76,[201,203,205,209,210,213,214,216,218,220,223,224,226,228,229,232,235,239,241,244,246,249,251,254,258,260,261,263,266,269,272,274,276,277,279,282,284,287,291,294,295,298,300,304,309,311,314,316,319,321,323,327,329,332,335],[138,34,45,202,139,34],"project\u002Fpositive\u002Fnone",[188,34,34,204,11,39],"maker\u002Fneutral\u002Fnone",[206,39,45,207,208,34],"45718661","maker\u002Fpositive\u002Fnone","whitehexagon",[191,39,34,207,11,39],[211,42,45,207,212,34],"45715961","scuff3d",[194,42,34,204,11,39],[104,35,45,215,105,34],"project\u002Fpositive\u002Fexecution",[217,35,34,207,11,39],"45718167",[101,185,45,219,60,34],"project\u002Fpositive\u002Fidea",[221,185,34,222,11,39],"45718096","other\u002Fneutral\u002Fidea",[180,45,45,202,181,34],[145,225,35,204,146,34],6,[227,225,34,204,11,39],"45717411",[59,225,35,204,60,34],[230,225,35,204,231,34],"45717856","saretup",[233,225,35,204,234,34],"45719310","cbdevidal",[236,18,35,237,238,34],"45716998","maker\u002Fneutral\u002Fexecution","liqilin1567",[240,18,34,204,11,39],"45717395",[242,18,34,243,238,34],"45718183","other\u002Fneutral\u002Fnone",[245,18,34,204,11,39],"45718214",[154,247,35,248,155,34],8,"project\u002Fneutral\u002Fperformance",[89,247,34,250,11,39],"project\u002Fneutral\u002Fdesign",[112,252,39,253,113,34],9,"project\u002Fcritical\u002Fperformance",[255,252,34,256,257,34],"45716279","commenter\u002Fneutral\u002Fperformance","ethin",[259,252,34,248,11,39],"45717368",[116,252,39,253,113,34],[262,252,34,248,11,39],"45718084",[264,252,35,248,265,34],"45718114","sedatk",[267,252,34,243,268,34],"45717442","qingcharles",[270,252,34,271,11,39],"45717478","commenter\u002Fneutral\u002Fnone",[273,252,34,243,268,34],"45723499",[161,275,35,248,162,34],10,[119,275,35,248,120,34],[278,275,34,253,11,39],"45725336",[280,32,35,250,281,34],"45721964","LarsDu88",[283,32,34,250,11,39],"45725347",[285,33,45,202,286,34],"45719457","danielberdit",[288,289,45,202,290,34],"45754902",13,"SurceBeats",[126,292,34,293,127,34],14,"other\u002Fneutral\u002Fdocs",[130,292,34,293,131,34],[296,292,34,293,297,34],"45721277","sim7c00",[299,292,34,293,127,34],"45730262",[301,302,45,202,303,34],"45718344",15,"tomjacobs",[305,306,45,307,308,34],"45715835",16,"project\u002Fpositive\u002Fdesign","ktimespi",[310,306,34,207,11,39],"45717399",[312,313,34,243,257,34],"45716275",17,[315,313,34,204,11,39],"45717439",[317,313,35,237,318,34],"45717916","vlovich123",[320,313,34,207,11,39],"45718115",[322,313,34,271,318,34],"45718444",[324,313,39,325,326,34],"45721401","project\u002Fcritical\u002Fexecution","drougge",[328,313,34,271,318,34],"45723557",[330,184,45,207,331,34],"45715840","kbbgl87",[173,333,35,334,174,34],19,"project\u002Fneutral\u002Fnone",[336,333,34,207,11,39],"45717376",[],[339,344,349,354,358,362],{"id":340,"name":341,"points":342,"category":343},"45706792","oxdraw",266,"dev_tools",{"id":345,"name":346,"points":347,"category":348},"45731366","Bash Screensavers",246,"creative",{"id":350,"name":351,"points":352,"category":353},"45684689","Deadstack",188,"productivity",{"id":355,"name":356,"points":357,"category":348},"45721352","ISS in Real Time",165,{"id":359,"name":360,"points":361,"category":343},"45717724","vite-plugin-use-golang",158,{"id":363,"name":364,"points":365,"category":366},"45722826","JSON Query",154,"data",false,"v2",{"id":370,"name":5,"line":6,"ai":367,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":371,"top":18,"kw":372,"maker":11,"domain":10,"tier":19,"attempts":34,"strip":373,"url":9,"mix":374,"praise":97,"objection":109,"sub":21},45715055,0.38,[24,25,26,27,28],"5055055530333003101030030355000500300153",[32,33,34,35],1793991132908]