Posts

VCFe 23.0 - It's been great - as always

We are reflecting on a very special VCFe, as it marked the 10th (or 10 1/2th) birthday of the Steckschwein.

Marko and Thomas presenting our 12 cycle muffin NOPslide

Reconnecting with old friends, making new friends, and celebrating and eating our 12 cycle muffin NOPslide together were all incredibly enjoyable experiences.

Additionally, Marko allowed an exciting sneak peek into his nearly complete Pacman implementation, the first ever on a 6502 that closely replicates the behavior of the original Namco Pacman Arcade.

VCFe 23.0 - The wait is finally over

The 23th annual European Vintage Computer Festival will take place on 7./8. September 2024!

The special focus of this year’s VCFe is _50 years of 8080 and 6800 with a lot of exhibitions and talks around those CPUs.

Also, the Steckschwein will celebrate it’s 10 year anniversary (more like 10 1/2 now) with you!

We will be showing all Steckschwein incarnations from its humble and nameless beginnings on a breadboard to the current 512k SBC version! Also, we will host a talk about the most important milestones and challenges in the last 10 years, and of course we’d like to celebrate!

Generating QR Codes

In order to generate our own QR codes natively on the Steckschwein, we drew a lot of inspiration from this article https://8bitworkshop.com/docs/posts/2022/8bit-qr-code.html

It even points to an adapted version of the qrtiny library, that has been made to compile with cc65, including a demo for the Apple ][, using cc65’s own Tiny Graphics Interface (TGI). Which is very nice, because all the hard work has already been done.

We have not implemented TGI (yet?), but we do have our rudimentary BGI (Borland Graphics Interface), which is similar. So all that’s left to do is porting the code to BGI, which has proved to be fairly trivial:

VCFe 23.0 - UPDATE

Update

VCFe 23.0 has been postponed until September 7th due to issues with the building.

Save the date! The 23th annual European Vintage Computer Festival will take place on 7./8. September 2024 !

And of course there can be no VCFe without Steckschwein. This time is special, as we first presented the humble beginnings of our (then nameless) favourite homebrew computer at VCF 15.0 in 2014. So this year not only marks the 10th anniversary of the Steckschwein, but also the 10th anniversary of the VCFe being “home” of the Steckschwein.

Sorting Demo

To share my fascination for the numerous sorting algorithm videos on youtube, I took some sorting algorithm examples in C from https://www.geeksforgeeks.org/sorting and visualized them using our BGI compatible C graphics library (more about that later).

The algorithms shown are:

  • Bubble Sort
  • Cocktail shaker Sort
  • Gnome Sort
  • Insertion Sort
  • Comb Sort
  • Heap Sort
  • Shell Sort
  • Selection Sort
  • Quick Sort
  • Merge Sort
  • Radix Sort

The code examples from https://www.geeksforgeeks.org/sorting are only slightly adapted and could be compiled with cc65 almost instantly. The trick was only to find the places in the code where the interesting search array accesses happen.

V9958 YJK (YUV) mode

Some time ago we introduced a tiny tool called ppmview.prg in our collection of tools and progs for our Steckschwein. The ppmview.prg, as the name already tells, is able to load an image in ppm (Portable BitMap) format with a maximum size of 256x212px and displays it on the screen.

The first version of ppmview was released in 2018 and since then we just use the SCREEN 8 (MSX) also known as graphic mode 7 (RGB).
Mode 7 is a bitmap mode where we have 256 colors available and each pixel requires 1 Byte for their color information. The 1 Byte color information must be stored in VRAM encoded as GRB 3:3:2 (green, red, blue), which means 3 Bit green, 3 Bit red and 2 Bit blue.
On the other side we have the PPM color information - which is 24Bit RGB - so we have to adapt or map the 24Bit to our 8 Bit GRB color value in some way.
It becomes apparent that this comes with a price, namely the loss of color information. Especially the blue part of the pixel is just 2 Bit, hence we have 4 levels of blue per pixel available only. The following screenshot from our Emulator shows the loss of color information.