Touch screen update

Today I’ve been reviewing the relevant documentation about the touch screen panel mounted on the 2.8 inch ILI display I intend to use for future projects. I think it’s all pretty much straightforward to integrate in my framework, including a 3-point calibration sequence to perform at start-up, that would ensure a more accurate measurement of the pen position on the panel.

ILI9341 display with XPT2046 touch screen controller

ILI9341 display with XPT2046 touch screen controller

Before bed time I got the part designed in an Eagle library, ready for integration in PCB designs as per below.

Part design for the 2.8" display with touch screen controller

Part design for the 2.8″ display with touch screen controller

I’ve also had an idea for a new unrelated project. I am not too sure I will be in a position to develop it any time soon as it would involve some additional Android development to the one I already did for the Bluetooth module integration.

Posted in Technical | Tagged , , | Leave a comment

Restoring color RAM data

Following my recent fix of a  crack-intro I was asked by a couple of people how to go about restoring missing color RAM data?

The short answer to that is: that’s easy if you have the right tools 🙂

Now I am not saying that this doesn’t involve guess work, because it does indeed, but what I am trying to say is that the problem is orders of magnitude simpler if you use a tool that provides a strict separation of the color RAM and video RAM data. There are certainly a zillion editors out there that do, but I used my own home-brew version that I coded when I first started learning assembly, many years ago.

The GUI was inspired by Saracen Paint, which I had only seen on the Italian edition of Zzap!64, so I take no credit for it but for the lack of helpful information.

Fixing color RAM data in my own picture editor

Fixing color RAM data in my own picture editor

When working on uninitialised color RAM data in the editing pane on the right all I needed to do was to hit SHIFT+3 until I had the most appropriate value there, based on surrounding areas and the overall design.
This approach ensured that color RAM data, and color RAM data only, was impacted by the restoration process. That is not necessarily the case in a generic editor, e.g. with common fill tools that were designed for a more generic case and implement color reduction strategies that can alter surrounding pixels.

Signing off until next time!

Posted in Pixel Design, Retrocomputing, Technical | Tagged , , , | Leave a comment

One day I’ll get them all fixed and release an updated version

I was looking at Level 6 design files for LN2 this evening when I spotted that there’s also another design issue at this level.

This is the room where the rope can be collected. Have a look at the table right under the window:

Design issue in LN2 - Level 6

Design issue in LN2 – Level 6

It appears that the table is misplaced and part of it goes through the wall. I believe this is due to an accidental setting of the mirroring property of the object. Here’s how I think it should have been:

Design issue in LN2 - Level 6 (fixed)

Design issue in LN2 – Level 6 (fixed)

Other mistakes I commented on in the past:

One day I will surely get all these design issues sorted and release an “improved” version 🙂

Posted in Retrocomputing, Technical | Tagged , , , , , , , | Leave a comment

Crack intro fixing

The Commodore 64 crack intro I fixed today is connected to one of the crack intros I like the most (the one that was written by Roy of Dynamix for North East Importers). The intro I fixed was written by Radar of Arcade: that’s the same person using a different handle. The other connection between these two intros is about the fonts used for text and top and bottom of the play area:

Arcade intro - original version

Arcade intro – original version

The intro written by Radar suffers a number of issues, of which 4 were really annoying, as per below image:

Arcade intro - original version with noted issues

Arcade intro – original version with noted issues

Those issues are:

  1. a bug with the pattern repetition of the background in the play area (top and bottom)
  2. uninitialised color RAM at the top of the logo
  3. flickering on PAL
  4. late screen mode change (the wrong video RAM data is fetched)

I finally found some time to fix those issues within the code and data so here’s how the crack intro looks like in all of its restored beauty  🙂

Arcade intro - fixed

Arcade intro – fixed

There are a couple of gfx glitches (blank lines) within the fonts for the upper border, but I think these are worth keeping: beauty is not about perfection 🙂

Finally, there are graphic elements in memory that are not used in the intro, such as a set of overlaid sprites that read “radar” and a set of sprites meant for showing player lives and score. I will try and figure out whether these were meant to be used or not. It is possible that the intro got messed up during its production and/or a work stage was used instead of the final one. It’s unlikely but worth a look 😉


Posted in Retrocomputing, Technical | Tagged , , | 1 Comment

DC2N5-LC Touchscreen?

As I received a few requests to produce more DC2N5-LC devices I’ll state my point here: to start with I am unable to buy additional displays at a reasonable price. Secondly, I haven’t got the time to build these devices.
However, there is some headroom for a new batch. Maybe. If things pan out as I hope, at least.

I ordered a couple of larger LCDs that are not as expensive as the ones I would need to match the previous batch of devices, although they incorporate a touch-screen with relevant controller. I guess the lower price is due to the fact that the resolution is the same, i.e. pixels are larger in the larger version of the LCD. At the moment it doesn’t appear to be such an issue, to be honest:

Testing a larger LCD for a new batch of DC2N5-LC devices by Luigi Di Fraia

Testing a larger LCD for a new batch of DC2N5-LC devices

If the work required to redesign the PCB and use the touch-screen (instead of the buttons) is not too much, it might actually happen.

Stay tuned 🙂

Posted in Retrocomputing, Technical | Tagged , , , , , , , , | Leave a comment

C2NEmu GUI client progress

I finally had some time and inclination to progress the C2NEmu GUI client and add most playback related features, including Play/Resume, Pause, and Stop button callbacks.

C2NEmu GUI playback client by Luigi Di Fraia

C2NEmu GUI playback client

In the above image “Real Stunt Expert” was fully played back in under 2 minutes as indicated by the buffer time tracker above the Stop button.

C2NEmu: first assembled prototype

C2NEmu: first assembled prototype

The IDX editor was already completed some time ago, so I envisage making the updated software available soon. I will work at minor changes over the next few days to make sure user experience is fine and that the GUI is fool-proof 😀

Posted in Retrocomputing | Tagged , , , , , , | Leave a comment

Donate page created

I was asked a few times whether there’s a way to donate me some money for my work, especially after I implement change requests to my software as requested by its users. Historically I have dismissed the topic, but I’ve recently received multiple requests to take donations so I decided to provide receive addresses for Dash and Bitcoin.

Please feel free to use the receiving addresses under my new Donate page for donations. Thank you in advance 🙂

Posted in Donate | Leave a comment