Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Rawr! I love bit banging

Rawr! I love bit banging

Scheduled Pinned Locked Moved The Lounge
graphicshardwareiotperformancecode-review
17 Posts 10 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • H honey the codewitch

    No I just didn't understand you, since what I wrote had nothing to do with hard drives, and I don't normally associate the phrase "bit banging" with them so it threw me.

    To err is human. Fortune favors the monsters.

    C Offline
    C Offline
    Calin Negru
    wrote on last edited by
    #8

    I went a little further down with reading (just one sentence), it looks like you`re still talking about the same earthly thing (or things). Since it`s about freedom I thought why not join the party, programmer style of course.

    H 1 Reply Last reply
    0
    • C Calin Negru

      I went a little further down with reading (just one sentence), it looks like you`re still talking about the same earthly thing (or things). Since it`s about freedom I thought why not join the party, programmer style of course.

      H Offline
      H Offline
      honey the codewitch
      wrote on last edited by
      #9

      Well, I haven't had to wave a dead chicken over this code yet. I'm still researching it. First crawl, finally deal in the meta, and magic.

      To err is human. Fortune favors the monsters.

      C FreedMallocF 2 Replies Last reply
      0
      • H honey the codewitch

        No I just didn't understand you, since what I wrote had nothing to do with hard drives, and I don't normally associate the phrase "bit banging" with them so it threw me.

        To err is human. Fortune favors the monsters.

        F Offline
        F Offline
        Fueled By Decaff
        wrote on last edited by
        #10

        Heh, I once considered trying to create a floppy drive emulator by bit-banging the IO on a raspberry Pi, but concluded that the IO was too slow. Is that close enough? :-)

        1 Reply Last reply
        0
        • H honey the codewitch

          Well, I haven't had to wave a dead chicken over this code yet. I'm still researching it. First crawl, finally deal in the meta, and magic.

          To err is human. Fortune favors the monsters.

          C Offline
          C Offline
          Calin Negru
          wrote on last edited by
          #11

          Quote:

          dead chicken

          the party turns ugly, I`m leaving. don`t want to learn what that syntax means. btw, you won`t see me as quest from now on. In the light of what you just said, spells and code no thanks.

          1 Reply Last reply
          0
          • G glennPattonWork3

            Read the title and thought 'Ow Er Missus', mind you bit banging I find can be good for the soul... but I'm odd...

            B Offline
            B Offline
            Brisingr Aerowing
            wrote on last edited by
            #12

            You're normal compared to some people I know on Discord.

            What do you get when you cross a joke with a rhetorical question? The metaphorical solid rear-end expulsions have impacted the metaphorical motorized bladed rotating air movement mechanism. Do questions with multiple question marks annoy you???

            1 Reply Last reply
            0
            • H honey the codewitch

              There's little more satisfying than spelunking through a little MCU's hardware registers to try to eek some more performance out of its I/O. DMA, hardware SPI, SDMMC, here there be dragons. Every new platform is like unwrapping a new toy. Downside is my code is getting uglier and uglier as it supports more and more platforms, with little I can do about it. When it comes to driving LCD displays, one thing I did though was this. I decoupled the graphics driver itself, from the bus it uses, and both of those from the graphics library. library-->driver-->bus like that. So now, I improve the bus, say optimizing it to use the Teensy's DMA capabilities and blammo all of my drivers benefit. My code is unique in terms of IoT graphics libraries in that way. The bottom line is a little mess goes a long way and improves performance for all my driver code across the board. I've done it for the ESP32, and in part for the Teensy 4.x so far - the latter is a work in progress. It's deeply satisfying to cover that much ground by modifying one header file. And to do so by going back to the kind of coding I grew up with - smashing things up until i get to the wiring in the walls, figure out how it works, and tap right into the mains. It's delicious.

              To err is human. Fortune favors the monsters.

              J Offline
              J Offline
              jmaida
              wrote on last edited by
              #13

              yup. when the bits align the stars will shine.

              "A little time, a little trouble, your better day" Badfinger

              1 Reply Last reply
              0
              • H honey the codewitch

                Well, I haven't had to wave a dead chicken over this code yet. I'm still researching it. First crawl, finally deal in the meta, and magic.

                To err is human. Fortune favors the monsters.

                FreedMallocF Offline
                FreedMallocF Offline
                FreedMalloc
                wrote on last edited by
                #14

                Quote:

                I haven't had to wave a dead chicken over "this" code yet.

                Which begs the question: What code has had dead chickens waved over it? So ... How many chickens do you have now? How many did you start out with?

                H 1 Reply Last reply
                0
                • FreedMallocF FreedMalloc

                  Quote:

                  I haven't had to wave a dead chicken over "this" code yet.

                  Which begs the question: What code has had dead chickens waved over it? So ... How many chickens do you have now? How many did you start out with?

                  H Offline
                  H Offline
                  honey the codewitch
                  wrote on last edited by
                  #15

                  I never use my own chickens. ;P

                  To err is human. Fortune favors the monsters.

                  1 Reply Last reply
                  0
                  • H honey the codewitch

                    There's little more satisfying than spelunking through a little MCU's hardware registers to try to eek some more performance out of its I/O. DMA, hardware SPI, SDMMC, here there be dragons. Every new platform is like unwrapping a new toy. Downside is my code is getting uglier and uglier as it supports more and more platforms, with little I can do about it. When it comes to driving LCD displays, one thing I did though was this. I decoupled the graphics driver itself, from the bus it uses, and both of those from the graphics library. library-->driver-->bus like that. So now, I improve the bus, say optimizing it to use the Teensy's DMA capabilities and blammo all of my drivers benefit. My code is unique in terms of IoT graphics libraries in that way. The bottom line is a little mess goes a long way and improves performance for all my driver code across the board. I've done it for the ESP32, and in part for the Teensy 4.x so far - the latter is a work in progress. It's deeply satisfying to cover that much ground by modifying one header file. And to do so by going back to the kind of coding I grew up with - smashing things up until i get to the wiring in the walls, figure out how it works, and tap right into the mains. It's delicious.

                    To err is human. Fortune favors the monsters.

                    E Offline
                    E Offline
                    englebart
                    wrote on last edited by
                    #16

                    My favorite bit banging trick was setting up hardware sprites on the C64 with their pixels rendered from memory location 0x0000 or 0x0100(call stack). You could see system clock, etc like a heart beat of the machine. Also figuring out how to put a piece of electrical tape over certain pins on cartridges and plugging them in on a hot machine.

                    1 Reply Last reply
                    0
                    • H honey the codewitch

                      There's little more satisfying than spelunking through a little MCU's hardware registers to try to eek some more performance out of its I/O. DMA, hardware SPI, SDMMC, here there be dragons. Every new platform is like unwrapping a new toy. Downside is my code is getting uglier and uglier as it supports more and more platforms, with little I can do about it. When it comes to driving LCD displays, one thing I did though was this. I decoupled the graphics driver itself, from the bus it uses, and both of those from the graphics library. library-->driver-->bus like that. So now, I improve the bus, say optimizing it to use the Teensy's DMA capabilities and blammo all of my drivers benefit. My code is unique in terms of IoT graphics libraries in that way. The bottom line is a little mess goes a long way and improves performance for all my driver code across the board. I've done it for the ESP32, and in part for the Teensy 4.x so far - the latter is a work in progress. It's deeply satisfying to cover that much ground by modifying one header file. And to do so by going back to the kind of coding I grew up with - smashing things up until i get to the wiring in the walls, figure out how it works, and tap right into the mains. It's delicious.

                      To err is human. Fortune favors the monsters.

                      G Offline
                      G Offline
                      grralph1
                      wrote on last edited by
                      #17

                      It is Delicious I agree. Done a lot of it over the years. It is success that makes it delicious. When you don't succeed it makes it more mundane. However the conversation that you had with @CalinCali was so funny. I now have visions of you waving someone else's dead chicken over your code, casting a spell, that puts a hex on it. Spells and coding has got to be good. For everyone.

                      "Rock journalism is people who can't write interviewing people who can't talk for people who can't read." Frank Zappa 1980

                      1 Reply Last reply
                      0
                      Reply
                      • Reply as topic
                      Log in to reply
                      • Oldest to Newest
                      • Newest to Oldest
                      • Most Votes


                      • Login

                      • Don't have an account? Register

                      • Login or register to search.
                      • First post
                        Last post
                      0
                      • Categories
                      • Recent
                      • Tags
                      • Popular
                      • World
                      • Users
                      • Groups