NCOT Technology
NCOT Technology
  • Видео 70
  • Просмотров 286 824
Stealing the secrets of the NES - Agon Light Tilemaps in C
Support the channel: ncot.uk/support
Github: github.com/ncot-tech/agon-graphics
In this video, I explore how early computers used clever tricks to create moving graphics, focusing on how Nintendo developed tile-based games on the NES. Using these techniques, I built a scrolling tilemap system for the Agon Light using C.
We start with a quick look at the evolution of game graphics, from text-based to visual, and how the NES managed to create a continuous scrolling world with tiles. Then, I demonstrate how to implement a similar tilemap system on the Agon Light, building on our previous video on bitmap graphics.
Join me as we look at the challenges and solutions of creating a smooth scrolling t...
Просмотров: 1 546

Видео

Programming Bitmap Graphics - Agon Light using C
Просмотров 1,5 тыс.2 месяца назад
Get the code: github.com/ncot-tech/agon-graphics Support the channel: ncot.uk/support Visit the website: ncot.uk In this video I look at how you can program the Agon Light to display bitmap images using C. I go through how to convert a PNG image into an RGB2222 format bitmap image, and then use the C library functions to load that into the Agon Light, and the VPD commands necessary to display t...
Programming Windows Screensavers - Agon Light Graphics Programming
Просмотров 6 тыс.2 месяца назад
Support the Channel - ncot.uk/support Get the code for this episode - github.com/ncot-tech/agon-graphics I'm learning how to program the Agon Light, and as a project thought it'd be fun to try and program two of the classic Windows 3.11 screensavers - Mystify and Starfield Simulation. My aim is not to simply program the Agon Light by cloning the Windows 3.11 screensavers, but to learn how to pr...
Programming Language Easter Eggs
Просмотров 1,3 тыс.3 месяца назад
Easter eggs are usually hidden inside our games and software, but did you know there are some hidden inside the tools and languages used to make that software? Come with me on a fun Easter diversion while we eat our bodyweight in chocolate, and look at six programming Easter Eggs. Some of these are from the Python programming language. It seems they had a lot of fun making the language itself a...
Calculating Pi using Python - Gauss-Legendre and Monte Carlo methods - #piday 2024
Просмотров 5044 месяца назад
Let's celebrate #piday in this appropriately short video by writing some #python programs to calculate Pi. The first method uses something called the Gauss-Legendre method. It works by iteratively refining an approximation of Pi, generating the answer digit by digit. When writing code to calculate Pi we run into issues trying to store the calculated value. A floating point or double precision f...
Agon Light 2 - C Programming, Better Keyboard Routines, Joystick Ports
Просмотров 2,4 тыс.4 месяца назад
Dive into the exciting world of DIY hardware hacking. Join in as I explore joystick integration, keyboard inputs, and serial debugging using the versatile Agon Light platform. Delve into the technical intricacies of GPIO pins, assembly language programming, and C compiler usage for low-level development. Discover the power of computational thinking, boolean logic, and UART serial communication ...
Cellular Automata - Simulate life from chaos and code
Просмотров 8095 месяцев назад
Today, we're diving into the world of cellular automata. A digital playground of sorts where simple rules lead to astonishing complexity. where order can arise from chaos and collapse back into chaos just as quickly. First we have a look at One Dimensional Cellular Automata which were originally conceived by John Von Neumann in the 1950s. These cellular automata operate on a grid of cells, usin...
Agon Light C Programming - An Introduction
Просмотров 3,1 тыс.5 месяцев назад
Instead of bashing away in BASIC, it's possible to do some coding in C on the Agon Light. Let's find out how in this introduction to an ongoing series where I figure out the Agon hardware and work on a game. I have no idea what game I want to make, and I'm not entirely sure how to achieve some of the necessary functions, but it'll be fun figuring it out and I hope you come along for the ride! T...
The Dark Art of Programming - Writing Cursed Code
Просмотров 2,1 тыс.8 месяцев назад
It's Halloween, programming is an art form and there's a darker side to it. Come with me in this fun video as I explore several languages that hate you and are trying to make your life difficult, before we go off down the rabbit hole and find some truly horrific examples of real programming. There's languages that are hard to read, languages that are deliberately hard to understand with nonsens...
FORTH - Better than BASIC?
Просмотров 38 тыс.8 месяцев назад
Let's look at FORTH, the obscure stack based programming language that nobody seems to use. Or do they? After getting an Agon Light Z80 computer and discovering it can do things other than run BBC BASIC I went looking at other programs to run on it. I came across Agon-Forth and that got me thinking. What's the point of FORTH, why's it barely used and is it really as awkward and strange as it ap...
Sinclair BASIC vs BBC BASIC - How to fit an entire devkit inside 64K
Просмотров 12 тыс.9 месяцев назад
Just how did 8 bit computers like the ZX Spectrum or BBC Micro manage to cram an entire programming language into their tiny systems, and still have space for the user's programs? Let's compare two systems of the time - the low end ZX Spectrum that tried to cram as much computer as possible into as little as possible, and the more luxurious BBC Micro that included a complete assembly programmin...
The Internet - Mid 90's Web Culture
Просмотров 3,1 тыс.10 месяцев назад
Let's jack into the 'net, surf the Information Superhighway and go visit the global village in this video taking a look at mid 90's Internet culture. Come and see what all the fuss was about before the dot-com bubble even began and people were still trying to work out how to make us of a globally connected network of computers. The concept was so new we still didn't have a consistent name for i...
Zilog Z80 Deep Dive - How does it work?
Просмотров 23 тыс.10 месяцев назад
Let's go right inside a CPU and watch it execute code at the transistor level! As a programmer I have often wondered exactly what the CPU is doing when I give it some code. Being a computer science teacher I know all about the fetch-execute cycle and what is supposed to be inside a CPU but what it actually does is glossed over. So I set about finding out using the Visual6502 project's simulatio...
The Computer Timeline: Calculators, Maths and Reverse Polish Notation
Просмотров 1,2 тыс.11 месяцев назад
What happens when you set out to build a pocket calculator? Well in this case it turns out you also accidentally invent desktop computers, and spawn a bunch of CPUs that are still being used today. Follow along as we go through the thoroughly bizarre story of how trying to do complex maths and fit it in our pockets lead directly to the machine you're using right now to watch this video. Calcula...
How the 1880 Census Led to the Invention of the Computer
Просмотров 41011 месяцев назад
How the 1880 Census Led to the Invention of the Computer
Tiling the Plane - What are Wang Tiles?
Просмотров 670Год назад
Tiling the Plane - What are Wang Tiles?
DIY Solar PV Installation - Can it save me money?
Просмотров 479Год назад
DIY Solar PV Installation - Can it save me money?
Hacking Your Way to a Smarter Home: Integrating Smart Sockets with Home Assistant
Просмотров 2,3 тыс.Год назад
Hacking Your Way to a Smarter Home: Integrating Smart Sockets with Home Assistant
BBC BASIC in RiscOS on a Raspberry Pi is really cool!
Просмотров 14 тыс.Год назад
BBC BASIC in RiscOS on a Raspberry Pi is really cool!
Samsung SDP-860 Document Presenter Thing [VLOG 1]
Просмотров 457Год назад
Samsung SDP-860 Document Presenter Thing [VLOG 1]
2022 Review and Beyond!
Просмотров 178Год назад
2022 Review and Beyond!
The £3,000 brick phone - mobile phones in the 1980s
Просмотров 831Год назад
The £3,000 brick phone - mobile phones in the 1980s
DMA - Direct Memory Access on the ZX Spectrum Next
Просмотров 1,2 тыс.Год назад
DMA - Direct Memory Access on the ZX Spectrum Next
Clever engineering on a budget - ZX Spectrum Interrupts
Просмотров 9 тыс.Год назад
Clever engineering on a budget - ZX Spectrum Interrupts
Breaking the 64k barrier - Spectrum Memory Banking
Просмотров 6 тыс.Год назад
Breaking the 64k barrier - Spectrum Memory Banking
How 8bit computers work - interrupts, memory and DMA | Computing Fundamentals
Просмотров 4,9 тыс.2 года назад
How 8bit computers work - interrupts, memory and DMA | Computing Fundamentals
Programming Vlog 0x04 - Reinventing the wheel
Просмотров 5132 года назад
Programming Vlog 0x04 - Reinventing the wheel
weird video display
Просмотров 2032 года назад
weird video display
Easy C Programming on ZX Spectrum Next - How to set up
Просмотров 3,3 тыс.2 года назад
Easy C Programming on ZX Spectrum Next - How to set up
Amiga style demo effects on a ZX Spectrum Next
Просмотров 6 тыс.2 года назад
Amiga style demo effects on a ZX Spectrum Next

Комментарии

  • @wburris2007
    @wburris2007 4 дня назад

    In 1976 I bought the recommended calculator for my university physics class, an HP-25, and discovered RPN. In the 80s, i played with Forth for a while.

  • @ByteMeCompletely
    @ByteMeCompletely 10 дней назад

    What CPU should be the first implemented in Graphene? The venerable 6502? z80? cray 1?

  • @fredknox2781
    @fredknox2781 11 дней назад

    I would have taken a chronological approach, starting with an unpowered CPU. The power is applied to the circuit, a circuit external to the CPU holds the CPU RESET* pin low for a while to allow the power to stabilize and possibly some other circuit(s) to be set to a known state. When the RESET* pin is low, the CPU is stopped. Then the RESET* pin is set high. The CPU then fetches an instruction from memory (ROM) and executes it. The location of this memory address is hard-coded into the CPU chip and is part of the CPU documentation. The CPU then proceeds in the way you describe, fetching instruction after instruction. There can be variations such as the CPU loading other values from ROM before starting the instruction execuction stream.

  • @thomassparrevohn8577
    @thomassparrevohn8577 12 дней назад

    It's often used (FreeBSD) in boot loaders where space is at a premium

  • @BillDavies-ej6ye
    @BillDavies-ej6ye 13 дней назад

    I've had countless PCs and laptops over the years. I really which I'd kept my BBC computer, so easily interfaced, such a clever language. I hand disassembled the Basic ROMs, very tidy structure, I learned so much from it. Later, Pascal and Forth.

  • @VeggieManUK
    @VeggieManUK 14 дней назад

    Some comercial games on the sprectrum were actually in basic, they were very good too all things considdred. Carnell Software Ltd IIRC did a couple.

  • @VeggieManUK
    @VeggieManUK 14 дней назад

    I never liked BBC basic, Sinclair basic had already burrowed itself into my brain, and the single key keyword system meant I could enter code extremely quickly.

  • @flyguille
    @flyguille 14 дней назад

    You stil skipped the explanation in this video too. You jumped directly to explain machine code and how to program machine code (assembly) and a mini routine. No! Your student actually asked "how the decoder works", the only answer is simple. IT IS JUST a mini ROM INSIDE the microprocessor like the z80 and any other processor!, THE fetched instruction is placed in its address bus, and the data stored in that mini rom activates multiples lines, one line can be enhable register B plus READ, it will dump the value in its internal data bus, and enable register A plus WRITE, and so on, that will make ld a,b , in one tick clock, if multistage instruction, a counter can count up the stage, the count also will be feed in the decoder mini ROM , AS THE LOWER addresses bits, that counter can be reset to stage zero, so, one of the bits store in the rom must mark when the instruction ends its execution. Now, the next question the student will ask is, how the ADDRESS DECODER of a ROM works. And the answer is , it is just a binary tree of AND / OR gates!. You can teach the basica of addressind decoder to enable the correct byte /word to be outlut from that mini rom

    • @flyguille
      @flyguille 14 дней назад

      Before whole cpu in one chip, there was CPUs made of PCB cards, with lots of TTL Logic chips, and the decoder was ACTUALLY A ROM IC chip, 256bytes ROM , 1K ROM, 2 roma in parallel, so it outputs up to 16 enhabled signals, etc. registers were STATIC RAm Chips, and there were ADDER / ALU chips, COUNTERS UP, COUNTERS DOWN chips, it is all in the TTL FAMILY HAND BOOK, THE BLUE BOOKS,. Z80, 8080, 6502, MADE all those huge pcb cards all in one chip.

  • @LarryRobinsonintothefog
    @LarryRobinsonintothefog 15 дней назад

    Used Pascal on a TRS-80 at college where they had a CP/M computer (used an Intel CPU) and Turbo-Pascal and Borland C at home.

  • @cedricserieys9768
    @cedricserieys9768 17 дней назад

    South of France. November 12, 1983. My father handed me a black box "Sinclair ZX Spectrum" and said : "Open the box, read the book and have fun". 20 minutes later on the little B/W tv I saw a message : "(c) 1982 Sinclair Research Ltd.". Thanks dad!

  • @OmegaWolf747
    @OmegaWolf747 17 дней назад

    Ah! The fun of dialing into my ISP at 28 kbps, downloading email on Outlook Express and using IE 5 with JavaScript and ActiveX fully enabled. No wonder my poor computer was always crashing and freezing...

  • @velho6298
    @velho6298 17 дней назад

    Check Ben eaters video how the decode is executed

  • @greenfrogcoding
    @greenfrogcoding 19 дней назад

    Great video 👍

  • @Errcyco
    @Errcyco 24 дня назад

    Hey I just posted a video short of a Zilog I-box prototype from 1997. Really cool device my grandpa brought home for me. I had said I wished we could have internet on our TV and he smiled and said “we are working on that” and a few months later this thing came home. Lost it for decades.. just found. Let me know if you’d like more information or videos.

  • @rolvs
    @rolvs 25 дней назад

    I played quake over 14.4 modem. Worked ok when we got it working. Good times!

  • @algizmo7079
    @algizmo7079 26 дней назад

    The original engineers of the 'ball' mouse at Xerox Parc, quickly discovered the mice picked up dirt and grime from surfaces and started to give unwelcome results. One realised the benefits of IPA as a cleaner, so a technique developed of dunking the poorly mouse in a bucket of alcohol (lidded, we hope) After some time they learned that particular mice needed more frequent dunking, some eventually spending more time in bucket than in use, these were then declared 'alcoholic' and retired. ; )

  • @PlacidChainsaw
    @PlacidChainsaw 26 дней назад

    Just getting into the 8 bit homebrew hobby. Watching these videos is a great way to learn hw these systems work. Hopefully I'll engineer one of my own one day

  • @darrenjkendall
    @darrenjkendall 26 дней назад

    I can understand now after watching some of your videos why you teach, your delivery is so calm and non patronising.

  • @EmmittBrownBTTF1
    @EmmittBrownBTTF1 29 дней назад

    ZX81 screen blanking only in fast mode, the ZX80 however screen blanked on key presses always. the '81 used an isr to drive the screen, the '80 did drove the screen with waiting for keypress.

  • @8BitNaptime
    @8BitNaptime Месяц назад

    I recently got back to my VIC-20 and started looking at FORTH. I think it's pretty awesome to have any kind of language other than BASIC V2 on the VIC.

  • @74HC138
    @74HC138 Месяц назад

    You didn't have to write out asm on paper on a Spectrum if you got a copy of HiSoft Devpac. It had an assembler (called GENS - fully relocatable, fit in 6k) as well as a debugger called MONS that could single step and breakpoint (again the debugger was only a few k and fully relocatable). Given the Z80 has absolutely no hardware debugging support, it was quite a feat to make MONS work, especially using so little memory. That Spectrum +3 you have also has all RAM bank switching (so you can have the entire address space as RAM, it's how you can run CP/M on a +3). The BBC Micro also tokenizes its BASIC, if you hexdump a saved BBC BASIC file you'll see all the BASIC keywords have been converted to a single 8 bit value. BBC BASIC is one of the few BASIC interpreters (maybe the only one?) of its day to support local variables in named procedures. It was miles ahead of ZX BASIC (and light years ahead of the excuse for a BASIC interpreter that the Commodore 64 had). The other thing that really put the BBC Micro ahead back in the day is none of its memory was contended, in other words, the video circuitry never stole cycles to fetch data from memory, this thanks to the 6502 family having a very regular memory fetch patten (every other cycle) so the video circuitry had regular slots where it could fetch video data. Unfortunately the Z80's memory fetch cycles are very unpredictable so you can't do that on a Z80 based system, you have to allow the video circuitry to pre-empt the CPU for video ram fetches (hence lower RAM being contended on a Spectrum, and pages 4-7 on a 128k +3 being contended). The lack of contention on a BBC Micro made it very fast, the 2MHz BBC Micro was easily faster than the 3.5MHz Spectrum (in the hands of a good 6502 coder!) BBC BASIC is also quite fast, the Z80 versions also performed well. That's not to say Spectrum BASIC isn't a work of art (it is) as they essentially fit the interpreter and the Spectrum's rudimentary OS into one 16K ROM.

  • @74HC138
    @74HC138 Месяц назад

    I have source files larger than 64k *targeting* machines with 64k of address space :-) Not hard to do given asm is less compact than its machine code equivalent.

  • @Roxor128
    @Roxor128 Месяц назад

    Makes me think of the tiling engine used by Commander Keen. It writes tiles into EGA memory and uses the hardware to scroll around. The hardware can only scroll so far, so the game writes tiles to video memory just off the edge of where the screen is scrolling to, plus replacing tiles where sprites in the main screen were before drawing new sprites.

  • @osakanone
    @osakanone Месяц назад

    I was a little kid back then. I remember looking online for advice to beat Starfox for SNES and discovering lots of Japanese websites and a warez copy of Atlas V V6 JE and I discovered the world of animation and comicbooks abroad. In the later 1990's I also got into 2channel and SomethingAwful, the mother and father of 4chan respectively. I have very fond memories of oddities like htmlchat where you had to refresh the page manually, and making music in Dance eJay and later FruityLoops to share with friends, as well as modifying simple Sharp 68K games and sharing the mod images and things like that. This all came off a hand-me-down Amiga 1200, then later a Sharp X68000 a neighbour was getting rid of for homebrew stuff, and an Olivetti Xana 200 Windows 95 IBM Compatible which was my first "proper" computer, all of which I kept in my little cave working on stuff. It was really an incredibly special time -- not so much I think, because of how little there was, but how incredibly focused it was and how unjaded it was. We all had to be precious with our internet usage, and so shitposting and things like that were highly discouraged, and qualityposting was encouraged and basic nettique so you didn't waste the time of others. As a result, the internet was just, a very very high effort place to be, where everybody did their best and likewise, attention was also deeply maximized so it was very focused and personal, and as much time offline was spent into putting things online a relationship which I think has now changed. Just as I think, broadband removed the cost of entry (which is good), it also made shitposting prevalent by removing the material cost involved, but it also evidently meant that human-time still got wasted something we still haven't solved. Likewise, phones robbed people of the ability to have what I'd call a "symmetrical relationship" with the computer, where instead people get filtered into bad behaviours and dark patterns since constructing good complex answers now is practically discouraged because doing so is tedious and difficult and there's a kind of social prisoner's dilemma of if nobody else is doing it, why should you? Even shitposting, before phones still had that air of qualityposting. People took longer to think about what they were saying, and be cheeky and clever instead of just referencing things. Quantity has a quality of its own though, and that's the direction the internet has been moving in for a long time -- so none of us should be at all shocked that generative models are going to slush flood the internet with nonsense. We'll pretend it all happened at once, but really its been where the internet was slowly heading this entire time, isn't it? What comes with volumes of stuff I think is hidden messages, which would lead to radicalization and fringe pushing. I think shows like X-Files and Serial Experiments Lain got this on an unconscious level at least. You might want to give Lain a go, since its quite a surreal borderline horror series about a girl in the late 1990's early 2000's slowly losing her mind to conspiracy theories on the internet and getting lost in the weird ether of online mythos and cultism. e: I feel you will enjoy this song which captures the feeling ruclips.net/video/QL1Dv_BGf18/видео.html

  • @Jackpkmn
    @Jackpkmn Месяц назад

    I'm hoping that you go into the whole super mario bros biggest smoke and mirrors thing is that there is no level data as we would conceptualize it. The game works like a little assembly line that constructs the whole game world on top of a endless pre-formed void right before it's rendered to the graphics buffer. And that thinking about trying to go backwards in a level in SMB creates the absurd concept of how to run an assembly line in reverse.

  • @doktorvells3634
    @doktorvells3634 Месяц назад

    Very interesting video. Remember when typing a BBC BASIC program to use the AUTO command. Also learning the command abbreviations also helps such as P. for PRINT and M. for MODE [of course on the Electron you could use the brilliant CAPS LK FUNC key to quickly enter commands]. VDU23 is also worth learning about. MODE 7 is a Teletext mode and can be used to create Teletext style block graphics - try two consecutive lines of P.CHR$(142);"HELLO" for enlarged text. PROC and FN can be used instead of GOTO and GOSUB to make a tidier program. ON GOTO and ON GOSUB can also be useful. REPEAT... UNTIL 0 is a better way of creating an infinite loop of commands.

  • @mikecook317
    @mikecook317 Месяц назад

    I really enjoy your video, but it's way above my head. I would like to have a retro-CP/M prebuild, like a Phoenix256 or a Commander X16 or such. Also, I like to play around with BASIC hobby coding. If anyone here wants a fast line number style BASIC for a modern computer, PC-BASIC is a free download. It would run this code shown above very,very quickly.

  • @MadsterV
    @MadsterV Месяц назад

    pro tip: modern 3d engines also do not draw whole tilemaps offscreen. There's a culling stage where triangles that fall outside the render viewport are discarded.

  • @leon.690sm9
    @leon.690sm9 Месяц назад

    hey i have a megafile 30 that doesnt work. when you turn it on it spins up but the activity led is CONSTANTLY on as soon as you flip the power switch. also it doesnt seem to do the selfcheck, the heads only "click" once shortly when it has reached operational rpm... the harddrive sat in our basement for like 30 years now. I cant find anything wrong on any of the boards they look brand new, I also reseated the harddrive connectors to the pcb and that didnt help. You think the heads are stuck? how could i solve that? Someone in the Atari forum wrote that you could try to give it a whack in the direction the heads should be moving, timed right when they already want to move?

  • @AlexEvans1
    @AlexEvans1 Месяц назад

    I presume there is a reason why you aren't using the Agon's "hardware" sprites for your sprite.

    • @ncot_tech
      @ncot_tech Месяц назад

      I need to have a play with those, although according to the docs for the Console8 firmware which I use, it says "For completely optimal graphical performance, it is usually best to avoid using sprites, and instead use the bitmap system directly. Using a small number of sprites can be a reasonable compromise." agonconsole8.github.io/agon-docs/vdp/Bitmaps-API/

  • @archibaldbuttle7
    @archibaldbuttle7 Месяц назад

    hey James - another excellent video - nice work! you're right that using VDU 23,27,1... to copy an area of the screen to a bitmap will only work with 8-bit IDs - which is why there's also VDU 23,27,&21... which works with 16-bit IDs 😁 another thing - it is possible to only plot part of a bitmap. if you set a graphics viewport, then a bitmap plotted using PLOT &ED will only draw pixels within the viewport. (NB this isn't true if you use VDU 23,27,3 to draw bitmaps). just set a viewport to be just the column(s) revealed on the screen edge and then use your existing loop to plot the edge bitmaps - the underlying code in the VDP deals with the clipping and will give you a bit of a speed boost. you'd just need to remember to clear that viewport afterwards. (or use the multi-context API to swap between contexts and remove the need to set and clear the viewport, just have one context with that viewport set, and a different context for other things - it's a shorter command to change contexts 😉) for drawing things like this it can also be a good idea to switch to using pixel coordinates, rather than using OS coordinates. it makes dealing with the Agon's slightly wacky OS scaling somewhat easier. btw, if you're after more performance, vertical scrolling is much more efficient inside the VDP... and RGBA2222 format bitmap plotting in 64 colour modes is inherently the quickest... 😀

    • @ncot_tech
      @ncot_tech Месяц назад

      I'll have a play with viewports and stuff at some point. A vertical scrolling shooter seems like a fun thing to try and make.

  • @MrGareth1973
    @MrGareth1973 Месяц назад

    Great video. Thank you!

  • @delphicdescant
    @delphicdescant Месяц назад

    I get a kick out of your disdain for Mario.

  • @SmashCatRandom
    @SmashCatRandom Месяц назад

    Nice video :) I've written a game engine for the old Arduino UNO 8-bit (16Mhz, 8bit, no video or audio), which drives composite output at 50fps, with split/full screen scrolling, sprites and a tile-map background with a resolution of 256x256. I've converted a couple of arcade games, including the scrolling Scramble, and the ZX Spectrum game Manic Miner to run on it (that one was a challenge as the 32K of the Arduino had to run the 48K spectrum game :) ) In my case I don't have nearly enough memory for a frame-buffer, so generate each scanline on-the-fly (AKA "racing the beam") using ASM to ensure it's cycle-perfect to match the screen refresh. The Scramble game and other demos are on my channel (flickering is just due to recording the screen with my phone - in real life they're super smooth).

  • @ncot_tech
    @ncot_tech Месяц назад

    @learnagon points out that "In 14:50 you say 27, 3 and I see putch(23); putch(7); putch(3); putch(1); putch(1); is this a typo or should it be 27, 3?" The code is correct, I said the wrong words, even though I was reading them out 🤦‍♂

  • @LearnAgon
    @LearnAgon Месяц назад

    Enjoying this new video very much, thanks 🙏 🎉

    • @LearnAgon
      @LearnAgon Месяц назад

      In 14:50 you say 27, 3 and I see putch(23); putch(7); putch(3); putch(1); putch(1); is this a typo or should it be 27, 3? Gracias 🙏

    • @ncot_tech
      @ncot_tech Месяц назад

      @@LearnAgon it's 23,7 I said the wrong words, the code is correct.

  • @MichaelHarkins-bx8lw
    @MichaelHarkins-bx8lw Месяц назад

    In 64 bits; 2,646,693,125,139,304,345/842,468,587,426,513,207 Good for 37 decimal places. No need for floating point numbers. Use integer approximations.

  • @MichaelHarkins-bx8lw
    @MichaelHarkins-bx8lw Месяц назад

    355/113

  • @arronshutt
    @arronshutt Месяц назад

    Nice cat shirt. Although the beard seems to be a lot shorter :) Very impressive video. I think that you should be able to do some kind of scrolling platform shooting things fairly easily. Seems odd to me that the Agon Light is not more fully featured for writing games on, but I guess it just needs more code to overcome the various issues with the demo that you put together. But, looking good for doing a proper game on :)

  • @vruz
    @vruz Месяц назад

    Excellent work, James! Congrats!

  • @braveitor
    @braveitor Месяц назад

    Nice video and explanations. Those old programmers where really clever.

  • @firsteerr
    @firsteerr Месяц назад

    to be fair it was this genius that made home computing affordable AND many people are very successful for having learned their trade on them the spectrum was far from perfect as was most other "affordable "micros but again the 16k came in at £99 new so at least forty quid cheaper then the vic 20 which was also flawed

  • @etrax7007
    @etrax7007 Месяц назад

    Good explanation right down to the registers and logic gates!

  • @randomvideo
    @randomvideo Месяц назад

    In '97 my first job out of uni was as a computer technician at a school. I spent a *lot* of time glueing those mouse balls in. 🤣

  • @NotMarkKnopfler
    @NotMarkKnopfler Месяц назад

    Research "bit-slice processors" and all will become clear. Ben Eater's CPU on a bread board is a bit-slice CPU and is very easy to understand. More complex machines such as the z80 and 6502 are microcode architecture where each op code runs a little program inside the chip which coordinates the various parts of the chip. Start with bit-slice. Beautifully simple and elegant.

  • @Alex-jb5tb
    @Alex-jb5tb Месяц назад

    Cool lecture !

  • @julianocamargo6674
    @julianocamargo6674 Месяц назад

    Typical answer to the kid would be 'don't worry, how computers work is not a topic in the exams'

  • @alecbarker8484
    @alecbarker8484 Месяц назад

    Can you provide a link to the Flow Chart you created please? I'm interested in potentially using the SpritePlotter module and this would help me understand it.

  • @DAVIDGREGORYKERR
    @DAVIDGREGORYKERR Месяц назад

    What about Code::Blocks IDE and gcc/oldstable,now 4:8.3.0-1+rpi2 armhf