Igor Kromin |   Consultant. Coder. Blogger. Tinkerer. Gamer.

I've recently started to get notifications on my Mac telling me that I was running low on disk space. Upon some investigation I found that Spotify was taking up a good chunk of space with its cache directory. Now this wasn't the offline music directory, that's altogether a different location, this was the ~/Library/Caches/com.spotify.client directory.
spotifycache.png


Not sure why there needs to be over 7Gb of cache data for a streaming service. I've also checked if any of my library contents were set to be downloaded - they weren't.

So I opened the Terminal app and ran the following commands to remove all this cache data (I quit Spotify first)...
 Terminal
cd ~/Library/Caches
rm -rf com.spotify.client


That by itself was a temporary solution however. Now I had to tell Spotify to limit the size of the cache directory and that was done by creating a file called ~/Library/Application Support/Spotify/prefs and adding the following contents to it...
 ~/Library/Application Support/Spotify/prefs
storage.size=1024


The above sets the limit to 1Gb (or 1024Mb). After making this change I opened up Spotify and used it as usual.

Continue reading...  

, , ,

I've been messing around with BrowserFS and IndexedDB storage recently and managed to create a whole heap of duplicate database. For some reason, Safari doesn't give you an option to delete a single IndexedDB from website storage, so I had to find another way of doing it.
indexeddb_2.png


Of course one quick way to do it is to go to Safari's Preferences > Privacy > Manage Website Data..., find the website you want to delete IndexedDB storage for and delete. Unfortunately this will also remove any local storage and cookies, not always what you want when programming.
indexeddb_1.png


The second way of doing it is by bringing up the JavaScript console from the Develop menu and typing in indexedDB.deleteDatabase('your database name');...
indexeddb_3.png


That will delete just the database you are after, a nice and clean way of doing it.

There is one more way to do it, and that is to open Finder, the click on the Go > Go to Folder... menu item and enter "~/Library". From here you can look for Safari > Databases > __IndexedDB and delete any databases you don't want.
indexeddb_4.png


Continue reading...  

, , ,

Just over two years ago I did a teardown of a VideoPak video brochure that was powered by an Allwinner E200 chip. The teardown didn't find anything too exciting and when I tried to see if the device could be hacked, I had little to show. I did promise to follow up when I got an FTDI but somehow I completely forgot about this project...until now.

So two years later I did hook up the FTDI to my laptop and started to poke around on the VideoPak PCB.
IMG_5566.jpg


portatable.png
pinout.png

From the documentation (linked above), I could see that Port A pin PA2 was the UART TX line. This pin mapped to pin 123 on the chip. This pin is the 6th pin from the corner and luckily I could see that there was a trace connecting this pin to a resistor.

I soldered on a wire to this resistor and since this was the TX line, I connected it to the RX pin on the FTDI. I also soldered on a wire to a GND pad and connected that to the FTDI GND pin. Nothing unusual.

For the serial port monitor, I used the Arduino IDE and the 115200 baud (though it also worked as slow as 9600 too).

Now before I get onto what the serial port showed, I'll cover the RX pin on the E200. Documentation says it should be Port A PA4, which is pin 127. I've tried but nothing seemed to work on this pin. I'm guessing that this pin is either rewired or shorted with another pin to prevent tampering with the built in firmware.

This meant that I couldn't really do much more hacking of this device...or so I thought. I actually did manage to get it working in a manner I wanted to (with automatic reset, video looping, etc) - more on that in another post though!


Continue reading...  

, ,

Just over a year ago I took to my NeoGeo Pocket Colour and modded it to have a front light out of a Gameboy. As I noted in that article, I wasn't happy with the results, and lets face it - has there been any front lit screen that's actually looked good? Well now we don't need to ponder about the tediums of front lit console screens because there's a new item on the market for the NGPC - Replacement NGPC Backlight LCD Kit.

I've seen a number of posts about it online and it looked too good to be true, so I just had to try it out for myself, and this was the result...
IMG_5450.jpg


It really does look good! There are a couple of caveats however. The biggest is that this new screen is about 1cm (diagonally) smaller than the original NGPC screen. Given the small size of that screen already, that's a big loss of screen space, but the vivid colours and high contrast really do make up for it. Second is if you want to use the brightness adjustment, you have to either cut into your NGPC or do something ugly like having a visible copper touch sensitive strip stuck on the outside of the case. I opted for not having brightness adjustment (later on this too).

I won't go into details of how to open up your NGPC or how to remove its original screen as that's covered in my previous article, but as a reminder - you will need a tri-wing screwdriver to undo one special screw, the rest are just normal Phillips style screws. If you're new to modding, a toolkit like this is good to have handy.

So the kit includes the replacement screen, a control PCB and a ribbon cable to connect the screen to this PCB. There are also some mounting bits of plastic, but you may as well forget about these and go for this 3D printed mount kit (don't forget to tip the author 😅). These will work if you've removed or are planning to remove all of the internal LCD position tabs inside your NGPC (I did this in my previous mod already because I needed the space). Alternatively you can refer to this article by RetroRGB for a different version of the mount kit that works with the internal position tabs in place.
IMG_5382.jpg


Continue reading...  

, , , , ,