What are EXE files made of?

Поделиться
HTML-код
  • Опубликовано: 7 май 2021
  • Almost everyone has opened an EXE file in a text editor and been mystified by the apparent nonsense. How does a computer make sense of it? Let’s uncover the illusion.
    Become a member: ruclips.net/user/Bisqwitjoin
    My links:
    Twitter: / realbisqwit
    Liberapay: liberapay.com/Bisqwit
    Patreon: / bisqwit (Other options at bisqwit.iki.fi/donate.html)
    Twitch: / realbisqwit
    Homepage: iki.fi/bisqwit/
    AMD64 programmer’s manual:
    www.amd.com/system/files/Tech...
    www.amd.com/system/files/Tech...
    www.amd.com/system/files/Tech...
    developer.amd.com/wordpress/me...
    www.amd.com/system/files/Tech...
    www.amd.com/system/files/Tech...
    8086 and 8088 datasheets:
    datasheets.chipdb.org/Intel/x8...
    datasheets.chipdb.org/Intel/x8...
    What I wore during the Tandy1000 filming (should have used black gloves too):
    s.click.aliexpress.com/e/_9fvUsZ
    www.aliexpress.com/item/40003...
    To contribute subtitles: ruclips.net/user/timedtext_vide...
    That’s numberwang!
    The flying numbers animation is from AllDesignCreative, by V. Sudharsan.
    For the Annotations Restored extension (please use!): [ar_start]tp=text,at=text,s=anchored,ts=357,te=368,t=For%20disassembling%2C%20any%20disassembler%20could%20be%20used%20for%20the%20same%20effect.%0AThe%20Tandy%201000%20does%20not%20have%20modern%20tools%20like%20%E2%80%9Cndisasm%E2%80%9D%2C%20%E2%80%9CCodeView%E2%80%9D%2C%20let%20alone%0A%E2%80%9CIDA%20Pro%E2%80%9D%2C%20%20but%20it%20does%20have%20MS-DOS%20Debugger%20%28debug.com%29%2C%20so%20I%20used%20that.,x=26.5,y=-2,txsz=2.6,w=73.5,h=12,bgc=4096,fgc=16776116,bgo=1;[ar_end]
    #numbers #assembler #hacking

Комментарии • 755

  • @sebto1301
    @sebto1301 3 года назад +119

    If the instructions of the .EXE files are for the processor, why there are differences with the unix/linux executable files? Or there isn't? Windows/DOS filters those instructions? Or there is a kind of instructions for OS, and others for CPU?

    • @Bisqwit
      @Bisqwit  3 года назад +194

      Because the EXE files doesn’t just contain instructions for the processor. It contains a structure. These structures are different in different operating systems.
      Additionally, even though the _processor_ is capable of executing the same instructions no matter which OS, how those instructions are actually _used_ differs. You can’t build a cabinet with instructions that show you how to build a chair, even if you are able to understand both instructions. Any time your program needs to do anything other than raw computation, it has to ask the operating system to do that. This is called a “system call”, or _syscall_ for short. For example, to open a file, you need a system call. The exact means to perform that system call differ from operating system to the next.
      There are also conventions and rules you have to follow, which vary from OS to the next. Rules such as which registers are used to pass function parameters. This set of rules is called ABI, application binary interface. If your program is compiled for the wrong ABI, no good things happen.

    • @blacklistnr1
      @blacklistnr1 3 года назад +27

      Rudimentarily, yes, the code in EXE could be run by all OSs if it's the right CPU, but that would be a particularly useless or dangerous code. If an executable wants 4 GB of memory and access to your GPU to draw something on screen it doesn't just go and grab them from who's currently using them, instead it asks nicely the OS, to which the OS might reply here you go or nope in various ways.
      If some code doesn't follow this procedure:
      - it's doing something rather useless like adding 1 to register A a dozen times, without the ability to ask the user/OS for anything or tell them anything back
      - it's asking the OS in the wrong way therefore the OS will shut it down for doing something illegal
      - it's actually interacting with the user, but without asking the OS, so it's probably a virus targeting an exploit which gives it power over hardware resources and it's hopefully caught by someone(user)/something(antivirus) before it can do that
      And even before all that, the EXE file must first ask the OS to load the code which will run on the CPU, if the EXE file does that wrong it fails before even starting.

    • @kevynbuy603
      @kevynbuy603 3 года назад +5

      Alot of the instructions call system api resources. Search up how to write hello world using x86 assembly.

    • @fllthdcrb
      @fllthdcrb 3 года назад +21

      Different OSs have often different structures in their executables, as well as different sets of system calls (APIs) and ABIs, as Bisqwit described. And other things, too, such as filesystem organization. However, if the code itself is for the same processor, it may be possible to run a program from another OS, without emulation and therefore with usually little loss of performance, by providing a compatibility layer that implements the other OS's APIs, ABIs, behaviors, etc. A well-known example of such a layer is Wine, software for Linux and Mac OS that allows to run Windows software. It has varying degrees of success, depending on the APIs used (the most iffy IME is video playback, which requires appropriate codecs that frequently don't work well), but works pretty well for a lot of things. Besides implementing Windows APIs, Wine also creates directory trees to show to applications so they see something resembling a Windows filesystem (most would freak out if they don't find certain things they expect).

    • @AiOinc1
      @AiOinc1 3 года назад

      Good question. At the end of the day, the programs do not run all on their own necessarily, they also make calls to the OS itself routinely to tell them that they are still working, to request resources, to offload complex operations such as handling networking protocols and moving images on screen, making sounds, etc. This is all handled by the OS itself, and while all of the instructions will complete successfully regardless if you're running Linux or Windows or DOS or even Mac OS on some machines, that does not mean the programs will be able to do anything because they still need those basic "Primitives" that are part of the OS itself.

  • @josecamua7380
    @josecamua7380 3 года назад +464

    The legend has come back.

    • @briankimathi5033
      @briankimathi5033 3 года назад +18

      I am relieved. I was worried with the virus around... I contemplated emailing him but saw that some of his videos have 4-5 months time difference. Honestly I'm happy he is back.

    • @Bisqwit
      @Bisqwit  3 года назад +79

      Thank you for your concern, both of you. I have been fine. But my stress levels have been quite high and energy levels quite low, lately. Thankfully I was able to put this video together nonetheless!

    • @EasyBreezyCheezy
      @EasyBreezyCheezy 3 года назад +13

      @@Bisqwit try smoking weed or taking mushrooms!

    • @NormHen5413
      @NormHen5413 3 года назад +2

      @@Bisqwit Coffee is good at restoring physical and mental energy(antidepressant), but it can cause a slight spike to blood pressure(might contribute to stress?) and the possibility of manic behavior.

    • @josecamua7380
      @josecamua7380 3 года назад +11

      @@EasyBreezyCheezy what in the world bro?

  • @seanjackson6474
    @seanjackson6474 3 года назад +325

    I loved that you showed off those computer sounds btw.

    • @Bisqwit
      @Bisqwit  3 года назад +59

      Thank you! I debated it a little, but eventually I decided that at least _I_ love to hear those sounds, and I don’t like to be a slave of algorithms.

    • @seanjackson6474
      @seanjackson6474 3 года назад +7

      @@Bisqwit and that's why your channel is great :)

    • @raf.nogueira
      @raf.nogueira 3 года назад +3

      What is heavily complicated for me to understand is how these assembly programs in 80s and 90s could access video functions to draw things on the screen. I have a huge curiosity on how these binary and hex calculations become the first user interfaces and games inside companies like Atari, Nintendo, the Xerox interfaces and Apple with Macintosh's, etc . WIsh someone could make a video about that....

    • @futu1983
      @futu1983 3 года назад +7

      @@raf.nogueira Explanation is in this video at 1:38.

    • @zatoichihanzo9167
      @zatoichihanzo9167 3 года назад +4

      @@Bisqwit the algorithm kind of brought me here and I loved that part the most 🖤I might even look for more old computer booting up...Its sounds, tempo, code... its relaxing and amazing to watch

  • @Rand0081
    @Rand0081 3 года назад +174

    Before the Tandy 1000 appeared I was thinking, "Only Bisqwit could explain Windows, on Linux" ❤️

    • @Bisqwit
      @Bisqwit  3 года назад +12

      What did you think after the Tandy 1000 appeared?

    • @Rand0081
      @Rand0081 3 года назад +12

      @@Bisqwit as always, never comment before the end :)

    • @LolWutMikehSM
      @LolWutMikehSM 3 года назад +2

      This explains the processor operations and not windows though, right?

    • @ahndeux
      @ahndeux 3 года назад

      Linux wasn't even a glimmer in Linus daddy's groins when we grew up with old school TRS80 and older computers.

  • @FredM80
    @FredM80 3 года назад +95

    I really like how you show that same numbers can be a text, a sound, a bitmap, depending of its interpretation !

    • @Bisqwit
      @Bisqwit  3 года назад +16

      And an infinite number of other interpretations as well! These were just the first ones that came to my mind.

    • @TopiVuorio
      @TopiVuorio 2 года назад +5

      Yeah its kinda philosophical!

  • @marioskoutras6583
    @marioskoutras6583 3 года назад +58

    When you enable subtitles : [Tandy1000: bukiikiikiikii kiikiikii].. Gold!

    • @ColeslawProd
      @ColeslawProd 3 года назад +3

      Them: No! You can't use an old Tandy computer for anything useful today!
      Me: Hehehe floppy drive go bururu kiikiikibukiibkiburru

  • @JimLeonard
    @JimLeonard 3 года назад +391

    A little disappointed the MZ EXE header/structure wasn't touched on, as that is what I thought the video was about, but it's still an entertaining look at what x86 code actually is.

    • @Bisqwit
      @Bisqwit  3 года назад +171

      Sorry about that. The 16-bit DOS EXE file is simple enough that it would be possible to cover in a time about the same as this video, but when we get into NE/PE, the background concepts become far less approachable and require a lot of explanation, limiting the options to 1) a very long video or 2) a video that most viewers don’t understand.

    • @CorneliusCornbread
      @CorneliusCornbread 3 года назад +20

      ​@@Bisqwit Maybe you could make a video discussing EXE metadata, or if that's not enough content, computer file metadata in general?

    • @djouze00
      @djouze00 3 года назад +37

      @@Bisqwit I think I can say most of us wouldn't mind a very long video :)
      This was a really nice one btw.

    • @Bisqwit
      @Bisqwit  3 года назад +65

      Thanks @Dzouje! I really appreciate the sentiment. However, the problem is, longer videos take _much_ longer time to produce… Because it’s not just the labor, but also the time needed to think of a good script / representation. The relationship between video length and production time is almost exponential in most cases, at least of my genre.

    • @JamieBainbridge
      @JamieBainbridge 3 года назад +9

      I also expected this to be about executable format metadata like MZ and ELF. Still, it was interesting all the same!

  • @ILightWas
    @ILightWas 3 года назад +21

    4:30 "Good afternoon this is your captain speaking, welcome onboard Flight 4B7 with service from San Francisco to New York.
    We are currently third in line for take-off and are expected to be in the air in approximately seven minutes time.
    We ask that you please fasten your seat-belts at this time and secure all baggage underneath your seat or in the overhead compartments.
    We also ask that ... "

  • @mariobrother1802
    @mariobrother1802 3 года назад +23

    Clever use of the Papers, Please sound effects when comparing the Tandy disassembly code to the datasheet, it fits quite well!

    • @E5rael
      @E5rael 2 года назад +1

      I knew the sound effects sounded familiar, but couldn't quite put my finger on from what game they were borrowed from; thanks for the answer! :D

  • @Koettnylle
    @Koettnylle 3 года назад +10

    I think including the sounds is GOOD for channel growth

  • @pienasty
    @pienasty 3 года назад +19

    Great simple explanation of a somewhat scary thing, I love it! Glad to see more videos from you!

  • @core36
    @core36 3 года назад +36

    This is the stuff I am subscribed for. Actually, this is the stuff why I use youtube at all. I am glad you exist and I love your content 👍

    • @raven4k998
      @raven4k998 3 года назад

      they are made out of cat fish

  • @TheBackyardChemist
    @TheBackyardChemist 3 года назад +25

    I fear an Unicode video would need to be 1 hour long :D
    I think the other parts of the .exe file could be just as interesting, think self extracting archives, etc.

  • @SuperDragonite2172
    @SuperDragonite2172 3 года назад +1

    Glad to see more content from you, Bisqwit. I've been a fan of your content for years, but never commented on your videos until now. Your content helped to rekindle my love of programming and I've recently had time to dive back into it. I look forward to more videos and I wish you the best. //Draco

  • @Marco-sz6mq
    @Marco-sz6mq 3 года назад +58

    We missed you! Welcome back! 😉

  • @user-vn7ce5ig1z
    @user-vn7ce5ig1z 3 года назад +13

    8:41 - For those wondering, this bit of code is just parsing the command-line arguments. 😉

    • @Bisqwit
      @Bisqwit  3 года назад +6

      Indeed. You are very good! It is a program I wrote entirely in assembly. You can find its source code here: bisqwit.iki.fi/src/miscasm/becho.asm

  • @Kenlauderdale123
    @Kenlauderdale123 3 года назад +26

    I remember opening an exe file with notepad as an 8yo trying to circumvent the WPA process for WMP10 back then 😆 hoping that I would find the if statement in there to comment out lol 😂

    • @EvilSapphireR
      @EvilSapphireR 3 года назад +3

      Well you had the principle right, just not the right language and the right tools.

    • @Kenlauderdale123
      @Kenlauderdale123 3 года назад +3

      @@EvilSapphireR later on, I realized that I need more tools and knowledge to do that.. fast forward, I am now a software engineer 😄

  • @satysin630
    @satysin630 3 года назад +1

    Great to see you back. Hope you had a nice break from RUclips and are doing well Bisqwit!

  • @only4posting
    @only4posting 3 года назад +13

    Hey ! Nice to see you back. Hope you're doing well...

  • @jlmg3543
    @jlmg3543 3 года назад +3

    Oooooooh today I learned something new! Thanks Bisqwit. Also the editing was really nice. God bless you!

    • @Bisqwit
      @Bisqwit  3 года назад +1

      Thank you very much!

  • @vegardertilbake1
    @vegardertilbake1 3 года назад +3

    My brain increases just a bit for every Bisqwit video I watch. Thanks!

  • @devjock
    @devjock 3 года назад

    I'm so sorry but I legit thought at 8:53 you said "Inside the minecraft processor" and I got a bit excited :D Awesome explanation as always. Love the little soundeffects and clipart. It really adds to the whole!

  • @RemnantCult
    @RemnantCult 3 года назад +2

    Your editing skills have improved. That really helps with greenhorn programmers just learning about low-level stuff. Keep it up!

  • @torchmusic27
    @torchmusic27 3 года назад +1

    Great video again Bisqwit, you really are excellent at explaining these topics in understandable terms.

  • @starc0w
    @starc0w 3 года назад +2

    I love your videos! You have a very good and original way of teaching this passion. You are a very good teacher! Thank you very much for making such great videos!

  • @velorek88
    @velorek88 3 года назад

    Cool! I really liked the video. I knew about many of the different pieces but somehow you managed to put all the knowledge together in a way that made sense. Thanks!

  • @LangleyNA
    @LangleyNA 3 года назад +6

    I first opened a binary around age eight-to-twelve, via a plaintext editor, and was presented with gobbledygook just as you describe. I recall querying Google around 2002 with queries like "how to make an EXE" and "how to make a DLL." Ahahaha.

  • @tommyhuffman7499
    @tommyhuffman7499 3 года назад +14

    Everything is high or low voltage. The numbers are also abstractions😋

    • @hexagonist23
      @hexagonist23 2 года назад +1

      Actually everything is just charges flowing through conductors. High or loe voltages are abstractions

  • @motbus3
    @motbus3 3 года назад

    It is so nice to see Bisqwit videos :) As many people here are happy to see you again.
    this topic is really interesting.
    it is interesting how many emulators tries to mimic not only the instructions but the number of cycles for each.
    some effects on some emulators were just possible due to some hacky abuse of how the processor worked.
    that's fascinating.
    imho, it is even more incredible because with very few resources, no internet (not as complete as today) people accomplished amazing deeds.
    one of my favorites is Rollercoaster simulator.
    there is something magical about going from some wiring specifications at processor level to a full experience we carried for life.

  • @markrobinson2648
    @markrobinson2648 3 года назад

    Nice to have you back! Was missing your content. Hope you've stayed safe during the pandemic.

  • @li82576
    @li82576 3 года назад

    amazing video! this is exactly the type of content that interests me, especially when it is presented by someone as incredible as you.

  • @crunchyduck
    @crunchyduck 3 года назад +1

    I've been working on a small game and that section with the old PC perfectly fit the vibe I wanted to go for in it, and ever since I've been down a rabbit hole of foley work, digging up videos of the music of FDDs. thank you greatly.

  • @UseQPixinDune
    @UseQPixinDune 3 года назад +2

    My favourite RUclipsr is back at it again and I couldn't be happier!

  • @InakaGames
    @InakaGames 3 года назад +2

    Jumping in here, just to let you know that I love this content, and that the work you put into Simon's Quest is absolutely transformative in making a definitive edition of the game. Thank you sir!

    • @Bisqwit
      @Bisqwit  3 года назад +1

      Thank you! I still wish one day I could finish the two big parts I am working on:
      - Changing the town doors visually to close for night & open for day
      - Music for the prologue

  • @JP-lr8rr
    @JP-lr8rr 3 года назад +1

    That was amazing, great editing and very informative. I also love that you do videos where you reverse engineer old games. I heard Pokemon was first written in the Gameboy specific ASM lang and that is just insane. Hope to see more from you. BTW I liked hearing the sound of that old computer. Gained a subscriber today!

    • @Bisqwit
      @Bisqwit  3 года назад +2

      Most games on the 8-bit consoles, including Gameboy, were completely written in assembler. It is not even that hard, when you gain experience. Laborsome, sure. But then again, you can achieve certain things with surprisingly little amount of assembler code when your entire hardware is designed with that point in mind.

  • @RicardoRamosRetrocomputacao
    @RicardoRamosRetrocomputacao 3 года назад +5

    God! This was the first time in my life that I was able to understand a piece of assembly code. Thanks!

  • @GloriousAssam
    @GloriousAssam 2 года назад

    Fabulous video, really made it clear, thanks also for the video of your retro PC!

  • @victorgabr
    @victorgabr 3 года назад +30

    He is back! We miss you.

    • @user-vn7ce5ig1z
      @user-vn7ce5ig1z 3 года назад +1

      I was just thinking of him two days ago. Not the biggest coincidence, but a coincidence nonetheless. 🤷

  • @sanstevenson
    @sanstevenson 3 года назад

    I was actually watching one of his old videos when i receive a notification...welcome back.

  • @Moonify
    @Moonify 3 года назад

    Glad to have you back. I loves this video, the edition was on point.

  • @ugandanknuckles3900
    @ugandanknuckles3900 3 года назад +3

    That was highly informative for a laymen such as myself who only deals in environments. Looking at numbers makes my head spin.
    ASCII looks daunting, the 8008 chip really does simplify what is today a maze of a processing instruction.
    It's amazing anyone could make a program let alone multiplayer servers etc with tons of stuff happening both inside and outside.
    Just all looks so daunting...

  • @Trunkerad
    @Trunkerad 3 года назад +5

    I already knew all the stuff in this video, but I watched it anyways for the calming computer noises.

  • @HugRunner
    @HugRunner 3 года назад +1

    Awesome content as always, just as the creator. Thanks a lot for creating interesting and insightful content! :)

    • @Bisqwit
      @Bisqwit  3 года назад

      Thank you for the kind words!

  • @vibecheck663
    @vibecheck663 3 года назад +1

    I may not fully understand everything you said, but it has blown my mind and made me appreciate the advancement of modern computers so much more. Thank you for making this!

  • @stupossibleify
    @stupossibleify Год назад

    Looking forward to some more videos, but in the meantime I'm rewatching some of your earlier uploads

  • @ChadZeluff
    @ChadZeluff 3 года назад +17

    Bisqwit, inbetween this video and the last, I built an 8-bit CPU across many breadboards and wrote my own little assembly language for it. The whole process was such an eye-opener. This video was really terrific in solidifying what I learned, thank you :)

    • @Bisqwit
      @Bisqwit  3 года назад +8

      Congratulations on your endeavor! It sounds like a lot of fun.

    • @trik9464
      @trik9464 3 года назад

      Thats crazy

    • @ScorieDivine
      @ScorieDivine 3 года назад +1

      ben eater?

    • @Jack-uc5ly
      @Jack-uc5ly 3 года назад +1

      wow very impressive! What instructions did you follow to make it?

  • @hav0x963
    @hav0x963 3 года назад +22

    This exact question has been in my mind for the last 2 days or so. Can you read minds?
    Whenever I have a question, I can now just pray that god bisqwit will upload his answers.

  • @Makos93
    @Makos93 3 года назад +3

    I love that Tandy ASMR. Thank you for leaving that in!

  • @EximiusDux
    @EximiusDux 3 года назад

    A nice return from the one and only Bisqwit!

  • @ancientapparition1638
    @ancientapparition1638 3 года назад +5

    6:08 Love the mask hahaha

  • @Filaxsan
    @Filaxsan 2 года назад +1

    Super interesting, super insightful! Thanks Bisqwit!

  • @PSPBobb
    @PSPBobb 3 года назад

    Amazing video, everything is so clear and easy to understand, you are an outstanding teacher!

  • @danielji2742
    @danielji2742 3 года назад +1

    The typing game you made, You changed the Dos stub text on it :) I love finding secrets in files.

    • @Bisqwit
      @Bisqwit  3 года назад +1

      Thanks! But there is no DOS stub in it, because the game _is_ a DOS game.

  • @applefanXXX
    @applefanXXX 3 года назад

    I am no closer to understanding but that is certainly not your videos fault. What a great piece of work!

  • @zennmyst5347
    @zennmyst5347 3 года назад

    I love these kinds of videos from you. Simple and understood. That said at some point a hope you do cover NE/PE. Maybe in parts? So its not one long video. Either was thank you for this video.

    • @Bisqwit
      @Bisqwit  3 года назад

      If I figure out a way to make it in an entertaining format, I will.

  • @unknown50ct
    @unknown50ct 3 года назад +1

    You can hear the passion you have for computers. Great content.

  • @domtuto3570
    @domtuto3570 3 года назад

    The return of the king 🤴 so happy to watch a new video!

  • @AlessandroPacifico
    @AlessandroPacifico 3 года назад

    Love it. Would have also loved a longer version more in-depth.

  • @user-ep4dr2tu2w
    @user-ep4dr2tu2w 3 года назад

    So happy to see you back

  • @Veso266
    @Veso266 3 года назад

    You are back, woho
    ah the unfortunate consequence of programming for your daily job is that after you get mentally tired home you cannot do anything more then lay down and sleep, watching you channel history (when you drove a bus you had a lot more time and energy to program at home) but you get more money now so thats a good thing even if the job is a bit more stresful

  • @ari_archer
    @ari_archer 3 года назад +1

    i just found this channel, i love it, it's super relaxing

    • @ari_archer
      @ari_archer 2 года назад

      omg whoever deleted or repotlrted the scam comment thanks, a group of scammers are stalking me

    • @Bisqwit
      @Bisqwit  2 года назад

      I did. Nobody is stalking you specifically. This is what I spend 15 minutes doing 3~4 TIMES A DAY nowadays on my channel. ruclips.net/video/YPU4Galm9yk/видео.html Thanks RUclips, for doing NOTHING.

  • @inelpandzic
    @inelpandzic 3 года назад

    Really excellent!! I happen to know this stuff, but still learned new things :D Thanks!

    • @Bisqwit
      @Bisqwit  3 года назад +1

      Thank you!

  • @brandonkruger9040
    @brandonkruger9040 3 года назад +24

    How does someone even dislike a video like this? Call me a nerd but I actually find these types of videos entertaining.

  • @onthecodeagain
    @onthecodeagain 3 года назад

    Nice to see you on the code again ;)

  • @ultraenergy313
    @ultraenergy313 3 года назад

    Glad to have you back

    • @Bisqwit
      @Bisqwit  3 года назад

      You too! :-)

  • @PixelOutlaw
    @PixelOutlaw 3 года назад +1

    One thing you might cover next @Bisqwit is how to actually make and use .so and .dll files. Many C++ programming books just lead the reader to compile simple examples pertaining to syntax and features of C++ but do not expand on what it means to compile a modular reusable library. They are taught that you can include code with your main.cpp file but do not elaborate on the use and creation of shared objects.

    • @Bisqwit
      @Bisqwit  3 года назад +1

      Shared libraries are an operating system level concept, not a language concept. At best, it’s compiler-specific. I might cover that topic at some time, but to be honest I’m not exactly familiar with the details either. Especially when we get to library versioning…

  • @binaryflawgic5713
    @binaryflawgic5713 2 года назад

    Really apreciated the emulator reference. I vaguely remember that video, but, back then, I thought it was just an emulator, I hadn't realised the "spin“ on it.
    Also you made me realise I probably never tried to open a binary file with a text editor. Windows helped with that. But I have broken many a terminal (emulator) sessions since I started using Linux, by `cat`ing binaries.

  • @seasidekafka
    @seasidekafka 3 года назад

    bisqwit is back!

  • @voxbine4005
    @voxbine4005 3 года назад

    A day ago i saw yur channel searching new videos, now i wake up and i have new video, everything is conected.

  • @navjotsingh6930
    @navjotsingh6930 3 года назад

    Exactly what I needed. Awesome content.

  • @rainerzufall5627
    @rainerzufall5627 3 года назад +2

    Awesome explanation! Thank you for making videos :)

    • @Bisqwit
      @Bisqwit  3 года назад

      My pleasure!

  • @jangofett132
    @jangofett132 3 года назад +1

    fantastic video like always!

  • @CutMeSomeSlackTheVII
    @CutMeSomeSlackTheVII Год назад

    Your desktop layout makes me insanely nostalgic

    • @Bisqwit
      @Bisqwit  Год назад

      You mean the physical desk?

  • @CT--od7ux
    @CT--od7ux 3 года назад

    Thats A Beauty, Love It, It Is Great To Have You Back, Biqwit

    • @Bisqwit
      @Bisqwit  3 года назад

      Thank You, I Was Never Away Though. Why Are We Starting Every Word With A Capital Letter?

    • @CT--od7ux
      @CT--od7ux 3 года назад

      cause I Love Writting Like That

    • @Bisqwit
      @Bisqwit  3 года назад

      It causes headache.

  • @ilmarinen79
    @ilmarinen79 3 года назад +2

    I love how much work you put into these videos, they are always quite something to experience. Also the Tandy sounds, oh my :-D

  • @justinmohns8279
    @justinmohns8279 2 года назад

    It was very nostalgic to hear the familiar sounds of a Tandy 1000 trying hard to follow simple instructions. I miss struggling to convince it to play games.

  • @twinkytwinklier4047
    @twinkytwinklier4047 3 года назад

    4:34
    Computer: old af
    Also computer: *transcendence noises*

  • @Sandvich18
    @Sandvich18 3 года назад

    I wouldn't be exaggerating if I said this video was the highlight of my weekend. Thank you, Bisqwit!!

  • @FlipJanson_
    @FlipJanson_ 3 года назад

    Great video as always 👍

  • @oxey_
    @oxey_ 3 года назад

    You have a blessed day as well, great video! :)

  • @efa666
    @efa666 3 года назад +2

    There are no numbers, just fields of varying voltages, the numbers only exist in our realm of perception.

    • @aaleeksii
      @aaleeksii 3 года назад

      Very well said. Tickles my nerd-senses. I hope this comment gets traction

  • @_ch1pset
    @_ch1pset 3 года назад

    Wow, this was way more involved than I was expecting. I graduated with a Bachelors in Computer Engineering last year(poor timing) and I have actually developed an instruction set architecture from scratch and implemented it in Verilog code AND also ran that on an FPGA AND also ran a program written with that ISA. Very fun projects, I wish the classes weren't so crunched for time. Sadly, I still haven't found a job(actually I have, but I quit because it wasn't what I thought it was) so none of this knowledge has thus far proven practically useful. I'm not trying to discourage anyone from getting a Computer Engineering degree, maybe my bad luck is just due to the pandemic, but also, most companies right now just aren't interested in hiring people that even know what an ISA is. They need front end web developers, and mobile app developers. And those are the exact kind of jobs that I have gotten offers(and have stupidly turned down, but I'm stubborn I know) from.

  • @gbraadnl
    @gbraadnl 3 года назад

    Was waiting for you to start playing the incredible machine

  • @raf.nogueira
    @raf.nogueira 3 года назад +5

    What is heavily complicated for me to understand is how these assembly programs in 80s and 90s could access video functions to draw things on the screen. I have a huge curiosity on how these binary and hex calculations become the first user interfaces and games inside companies like Atari, Nintendo, the Xerox interfaces and Apple with Macintosh's, etc . WIsh someone could make a video about that....

    • @Bisqwit
      @Bisqwit  3 года назад +7

      One of my future video plans has actually been to explain how graphics worked in CGA, EGA and VGA (and possibly MDA and Hercules, even though I have not much experience with those).
      As for video game consoles, each of them is a separate case. There already exist videos in RUclips that explain how graphics work on the 8-bit NES (Nintendo), if you want to look them up.

    • @omfgmouse
      @omfgmouse 3 года назад +1

      The "Retro Game Mechanics Explained" channel has an absolutely brilliant series of videos on how the SNES works and how it's programmed, if that's not too modern for you :)

    • @raf.nogueira
      @raf.nogueira 3 года назад

      @@omfgmouse God bless you

  • @Detyrious
    @Detyrious 3 года назад +1

    This is fascinating on so many levels. Think about this: You have 8 light bulbs and 8 switches in another room. That plus a lookup table is practically a CPU. Well, since two humans on either end would be involved and the instructions would be executed on paper probably the slowest CPU of all time, but you could send instructions and the other human in the other room could execute them.
    Now think about this a bit more. Think about your smartphone and all the incredible things it can do: render 3D graphics, connect wirelessly to the internet, snap high resolution images (and even edit them in real time) and many many more. Now.. think about, that all these things are fundamentally possible because of simple switches. If some decades ago you pointed at a electric switch and said: "Some day these switches will enable us to fly to the moon." you would be called crazy. Even today, if you told most people that their phones and computers work with billions of switches and not much else (okay, very simplified), they would'nt believe it. Now, for all the god-beleivers: Does your computer die, when you turn it off? Does it have a soul? Most would say 'no'. So why should a human have a soul? If you see what incredible complex things can be made from a lot of simple things, don't you begin to question that humans are nothing else? A machine run by billions and trillions of very small machines which run on relativly simple, chemical and physical rules.
    Maybe it's just me, but the technical advancements of the last years have shown me one thing: We are not as special as we think and complexity is created from simplicity. Food for thought.
    Sorry for my bad English, it's not my first language.

  • @Pedritox0953
    @Pedritox0953 3 года назад

    Wonderful video!!

  • @MrMcsoftware
    @MrMcsoftware 3 года назад +1

    If you don't mind me asking, how did you create the nice effects (like the numbers flying at the screen) in this video? Did you use a commercial video editing package or write your own (or maybe even the flying numbers is a screensaver's output), etc.? For my videos (channel associated with this username), I pretty much only use effects/transitions/annotations filters I have written, but I am open to using other programs as well (for example, hopefully I will have a reason to use manim (from 3Blue1Brown) in the future (even though it means coding in Python)). (I have used LaTeX to generate nice looking equations. Manim also uses LaTeX) I don't need to know about the annotations - I already have that covered in my filter code.
    BTW, I can totally empathize and agree to an answer you gave to one of the comments - it does take a long time to create these type of videos (script, editing, effects, etc.).

    • @Bisqwit
      @Bisqwit  3 года назад +2

      The numbers flying at the screen effect is actually from here: www.alldesigncreative.com/video-footage/green-effects/animated-numbers-background-green-screen-effect/
      I first considered rendering it in POV-Ray, but finding an existing animation shortened my production time.

    • @MrMcsoftware
      @MrMcsoftware 3 года назад +1

      @@Bisqwit Thanks for responding (and for the link)! Coincidentally, in January I added green-screen capability to my video overlay filter, so that site's effects will really come in handy.

  • @JarrydHall
    @JarrydHall 3 года назад

    @5:30, haha what a gentle beast! My ears are still ringing from the CRT though. Please apply a low pass filter in future videos with a CRT, it’s so loud! :)

  • @amostake
    @amostake Год назад

    This is the first time listening to someone with a thick accent, made the learn experience even more enjoyable.

  • @RiteshKudalkar
    @RiteshKudalkar 2 года назад +1

    This is so fascinating. Can you make another video considering ARM Arch 64, like the one in the new Microsoft Surface or the Apple Macbook Pro? It'll be really interesting to compare the instructions given they have a different OS.

  • @Thinzy
    @Thinzy 3 года назад +1

    he's returned, blessed be this day

  • @panupentikainen953
    @panupentikainen953 3 года назад

    Kiitos tästäkin videosta!
    8086:n valtakaudella assembler oli vielä ulkoa opittavissa. 386 toi hirveän määrän lisää rekistereitä ja mahdollisuuksia - alkoi mennä liian monimutkaiseksi mulle, joten vaihdoin C:hen. AMD64 on jo sellainen himmeli, että on turvallisinta jättää assembler-koodaus harvoille ja valituille erikoishenkilöille. :) Onneksi konetehot ovat nykyään sillä tasolla, että tavallisia ohjelmia ei tarvitse lähteä suunnittelemaan binäärikoodia vääntäen.

    • @Bisqwit
      @Bisqwit  3 года назад +1

      Kiitos! Joo, assembler-koodausta tarvitsee nykyään tosi vähän x86:lla. Lähinnä sellaiset tapaukset, missä SIMDistä on hyötyä, tarvitsevat usein asmia, koska kääntäjät ovat vieläkin aika heikkoja optimoimaan SIMDiä tehokkaasti, ja intrinsiceissäkin on toisinaan ongelmia.

  • @xmvziron
    @xmvziron 2 года назад

    Love the Papers, Please sound effects!

  • @tomaslingotti
    @tomaslingotti 3 года назад

    HE'S BACK

  • @ThiagoDragon0
    @ThiagoDragon0 3 года назад

    I got you on 6:09 hahaha
    The sacrifices one do for art

  • @rodrigoappendino
    @rodrigoappendino 3 года назад +1

    I miss those sounds. I was just a child when computers used to do sounds like this, so I don't remember much.

  • @kent_hdd
    @kent_hdd 3 года назад

    Great video! Can we have more on this topic ?

  • @greob
    @greob 3 года назад +1

    I would love to see a video about Unicode. Especially in the context of C programming. :D
    NIce video, good work on the editing too!
    Small typo at 6:03 "does not have modern tools"?

    • @Bisqwit
      @Bisqwit  3 года назад

      Oww, missed that. Thanks for telling! Nothing I can do now except to remove video and upload a fixed version… I’ll leave that be.

    • @greob
      @greob 3 года назад

      @@Bisqwit I thought you could add a youtube anotation overlay or something?

    • @Bisqwit
      @Bisqwit  3 года назад +2

      In line with their long history of removing useful features, RUclips removed the support for adding new annotations in 2018, and removed the support for _displaying_ annotations “due to low usage” in January 2019.

    • @greob
      @greob 3 года назад

      @@Bisqwit ohh my bad, I forgot about that. It's not a big deal anyway, it's quite obvious you cannot run these tools on such machines. ;)

    • @Bisqwit
      @Bisqwit  3 года назад +1

      You can however add a browser extension called “Annotations Restored”. The extension re-adds support for annotations despite RUclips removing it. This video has support for that extension - thanks to you!.

  • @BrendanMetcalfe
    @BrendanMetcalfe 3 года назад

    Nice vid!!

  • @17TheVIP
    @17TheVIP 3 года назад

    Wow man you came back :)