Join us on Discord!
You can help CodeWalrus stay online by donating here.

Displaying bitmaps on an oscilloscope

Started by Keoni29, November 05, 2015, 10:38:31 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Keoni29

I turned my oscilloscope into a raster display using an FPGA. It generates the horizontal and vertical sweep signals to draw the screen in X. Y mode and then modulates the beam to create the image.
A 256x256 dots image is stored in a framebuffer. I can send bitmap files to it from my pc. The data transfer rate is 4Mbit/s. This allows me to animate the image at 60FPS.

I can use this display for other projects. Eventually I hope to make a computer game that uses the display.
If you like my work, why not give me an internet?

DarkestEx

  • Calculators owned: TI-84+, Casio 101-S, RPN-Calc, Hewlett-Packard 100LX, Hewlett-Packard 95LX
  • Consoles, mobile devices and vintage computers owned: Original Commodore 64C, C64 DTV, Nintendo GameBoy Color, Nintendo GameCube, Xbox 360, PlayStation 2

novenary

This is awesome. :D
I fixed the youtube embed by the way.

Keoni29

I would like to convert animated gifs directly to 1 bits bitmap files that I can then stream to the device. I recall that a community member made a gif viewer for ti calculators. Perhaps I modify this tool to convert images to my own format.
If you like my work, why not give me an internet?

novenary

I think with imagemagick you should be able to automatically convert images to the format you want then strip the header with a small C program or Python script.

Keoni29

If the header is a fixed length I can also strip it using dd.
If you like my work, why not give me an internet?

Keoni29

#6
It had to be done. First oscilloscope rickroll.

If you like my work, why not give me an internet?

novenary

Damn, this is awesome. I'm pretty sure this is actually a first too, looks like you're lucky. :)

Dream of Omnimaga

I can't watch the video yet, but I saw the pictures and am amazed. Good job Keoni28. :)

Imagine playing Reuben Quest on an oscilloscope. :P
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Keoni29

I can also mirror part of my computer screen to the oscilloscope. I just take a screenshot, convert it and send it to the device. I made a script that does this in a loop so the screen refreshes automatically.
If you like my work, why not give me an internet?

novenary

That's a pretty cool feature. You should add a VGA input to it and play emulators on the scope. :P

Keoni29

You can only turn the beam on and off. There is no greyscale. The vga picture has to be converted to monochrome and that only looks good with dithering. Doing this on the fly would be very complex. First of all you need a high speed AD converter, then the signal needs to be processed in the fpga. It's much easier to make the PC do all the conversions and then send the result to the fpga.
If you like my work, why not give me an internet?

novenary

Ah that kind of sucks, I thought you could do some grayscale. :/

utz

Oh yes, looking good! It'd be even more ace to see some realtime fx on top of the pics/animations though ;)
  • Calculators owned: TI-82, TI-83, TI-83+, TI-85, TI-86, TI-92+, Sharp PC-1403

Keoni29

I can sorta do grayscale by making the beam stay at one spot longer to make the dot appear brighter, but it would make the image fuzzy and less stable. With this technique you can display pictures even on scopes without a z-input though. I tested it.
If you like my work, why not give me an internet?

Powered by EzPortal