Sorted by Squirrels.

Wednesday, 4 March 2009

Why?

Why do I do this to myself?

I've been meaning to start on the ZX Spectrum Compact Flash project for a while now. This site has some great stuff. Pera Putnik is a bit of a star in my humble opinion.

First things first - the terror inducing removal of the incumbent spectrum ROM with a Dremel cut-off disk. No pictures of this process exist as it's so fraught that taking a snap is all but impossible even with the most advanced image stabilisation techniques. The process is thus: (I'm shaking jut thinking about writing it..)

Cut through legs at top of ROM with Dremel. Remove remainder of legs with iron, wick and sucker. Solder in socket. Insert ROM. Relax.



The wire here is A14, I've used a 32k EPROM with 2 images burned in; the regular ROM and PP's CF OS. There's a splendid video that shows the thing in action. I can swap between the 2 with a simple flick of a switch.

Pictured below is a SparkFun CF Breakout board connected to some protoboard with pin headers. The edge connector there is soldered on one side, and I made connections to the second, floating row of pins using some 90 degree header. Click the pictures for the full resolution horror.





This hangs off the back of the spectrum. Now all I have to do is wire it.



Blisters aside, it's getting harder to do stuff like this as my old eyes are gradually losing their ability to focus at close range. It was fun though. And I've had an idea about a soldering station with built-in magnifier...

Now all I have to do is get it to work!

...

Cult of Done

Pretending you know what you're doing is almost the same as knowing what you are doing, so just accept that you know what you're doing even if you don't and do it.

Read, Loved and

Wednesday, 11 February 2009

MMmm.. Beeb!

I linked to the excellent MMBeeb project in an earlier post. It's been at the top of my project list again as I'm taking a pile of BBC B computers to TechAdventure which I'll be attending at the end of the month. I'm hoping to talk about MMC, old computers and the conjoining of the two. I'll have a table full of retro equipment to show, and some to sell.

As one of the first MMC projects I undertook, the MMBeeb board was a stepping stone that led much further than I expected. Whilst revisiting it in the light of all the knowledge I've acquired since then I've come to the conclusion that there are some subtle bugs with the original hardware. I'm hoping to contact the originator of the project and see what he thinks. I'll post an update here as soon as I've determined if I'm on the right path. In the mean time enjoy the view:





The revised circuit uses the same standard resistor divider as used on every other MMC interface I've ever made and a 3v3 regulator. That's it. It's not the hardware that makes MMBeeb special though - it's the software. It's a stupendously slick DFS conversion that integrates smoothly into a system. It also works with a second processor, which is an indication of the care and attention to detail that Martin has put into his work. And for the few paltry Great British Pounds that it costs for one of these you'd be crazy not to..!

Libraries

It's all go at the moment. Last weekend I attended my first DorkBot London meeting. I must confess I didn't really know what to expect but spent a very pleasant, if cold, day in the company of feverishly soldering artists and makers. I spoke to many people about uFat and the new DevicePrint library. This is some code that allows formatted textual output to a buffer in memory and thus onto some form of persistent storage...


You can get the new library here SMB_LIBRARIES. It adheres to the principles introduced in uFat:- it is lightweight and device agnostic. It should work with any storage medium as long as there is a function available to write a 512 byte sector.

The the code is initialised with a pointer to a buffer, some basic information about the destination sector area, and a writer function. From that point on you are free to use the familiar .print() functions which are best known in their Serial library incarnation. The Arduino base library provides you with so much more than a blinking LED ;)

As usual (1) - there is copious documentation in the form of comments and an example sketch configured to use MMC storage for you to play with. If you wanted to try it out without any devices available then you could always change the write proxy routine to dump the stored data to serial.

As usual (2) - comments welcome!

Toasted and

Friday, 30 January 2009

Chrome Tips

Two chrome tips for you:

1. The Type 55 0.5mm tip for my new favourite tool-in-the-box - an Antex XS 25 watt soldering iron! Ahem, while not exactly chrome, it does go shiny when tinned! I've only ever used my old workhorse cheap-and-cheerful 50 watt iron before now, which as far as I was concerned was as good as it got. So I was dubious when I was given this little gem to try. Imagine my surprise when I saw the difference that this iron/tip combination makes. I must say I'm absolutely astounded. It manages to pump much more heat into a joint than my supposedly more powerful iron that joints form instantly and cleanly. I'll never use another iron again ...

2. If you're having trouble downloading updates to the ever-so-likeable Google Chrome browser due to proxy issues or similar, then try this. Locate the event viewer for your Windoes system. This is usually in the Administrative Tools section of your control panel. There may well be an entry from the update manager which looks like this (click for a full resolution image):



You will see the URL to which the update service is attempting a connection. Cut and paste this into your favourite browser's address bar. In my case the download hoops are presented and I can duly jump through them, ending up with a newly polished chrome tool. Matron!

Double entendre added then

Thursday, 22 January 2009

Say Hello to uFat2

There has been a flurry of activity recently and a number of uFat users have been in touch, which is nice! In response to this I think it's about time that I posted my latest updates. The code is thoroughly commented and should answer most questions.

Most notably I have broken the dependency on a particular device library. Now you can use any code capable of reading 512byte sectors from any FAT formatted device.

Since a number of you dear readers asked about traversing FAT directories I've abstracted this requirement into a core feature. By providing a function callback you can now process FAT directory entries to your heart's desire!

It's still a lightweight library but there may be new ideas here for some beginner programmers. I don't think there's anything that should scare anyone though. Concepts such as pointers to functions and PROGMEM data storage are used throughout, but you should be able to use this as it stands without this knowledge. The example sketch should cover the most obvious use cases of printing a listing of files and updating a file on the card.

I developed this under the latest IDE at time of writing which is Arduino-0012. As usual, I'm happy to help with any problems or queries you might have.

Here's the goods: SMB_LIBRARIES and for pudding: The demo sketch

The code is now hosted on Google Code. You can download it here

Refer to the header files for usage, tips, and perhaps a LOL or two. If you're lucky ;)

Written, admired and duly

Monday, 1 December 2008

Goodbye yellow brick!

I've been reading about de-yellowing old equipment. Quite a few of my older babies have significant discolouration issues. Until recently I followed with the received wisdom, that once a plastic item has yellowed there's no going back. Chemical changes within the plastic produce the effect, and no amount of scrubbing will ever return your creamy commodore, beigey beeb or tawny tandy to its former glory. So imagine my surprise when I stumbled upon this wonderful posting over at the vintage computer forums. 

Old computer enthusiasm and chemistry wizardry have come up with a recipe for undoing the supposedly permanent effects of UV and fire retardants!

I'm definitely going to try this out, as soon as I can get hold of the requisite chemicals...


Contact Form

Name

Email *

Message *

This is how we do it

MMC (9) acorn atom (7) sord m5 (7) zx81 (7) multicart (6) arduino (5) Sord (4) tatung einstein (4) Atari 800 (3) Chuckie egg (3) M5 (3) M5Multi (3) c128 (3) sd card (3) sd2iec (3) sio2sd (3) 6502 (2) Max6956 (2) QL (2) RCM (2) assembler (2) avr (2) c64 (2) cadsoft eagle (2) eeprom (2) einSDein (2) mmbeeb (2) multi-cart (2) spi (2) system 80 (2) ufat2 (2) vic20 (2) video genie (2) 6502 second processor (1) 6522 (1) 8255 (1) Acorn BBC Micro (1) Apple 2e (1) Apple ][ 2 two (1) BBC 6502 second processor (1) BBC micro (1) DevicePrint (1) Double Choc Chip Muffins (1) FAT (1) IO (1) Jupiter Ace (1) LED (1) Master 128 (1) PCB (1) PIC (1) POV (1) PROGMEM (1) Pineapple (1) ST (1) Spectrum 128 (1) antex (1) arcade spinner (1) arduino shield (1) atari (1) atmel (1) bakewell tart (1) beer (1) bird's nest (1) bitbucket (1) brokenated XC special (1) cake (1) cassette (1) cassette interface (1) colecovision (1) compact flash (1) convert (1) dac (1) de-yellowing (1) dev cart (1) development tool (1) eaca (1) efficient (1) einsdein. z80 (1) esp32 (1) esp8266 (1) eye strain (1) failosophy (1) filesystem (1) finally (1) fram (1) french polishing (1) fuse (1) fuses (1) game development (1) games (1) gaming (1) github (1) glue (1) google chrome (1) heroic failure (1) high voltage programming (1) hot irons (1) if (1) jiffydos (1) joey beltram (1) lego robot (1) library (1) lying (1) machine code (1) matron (1) microcode (1) mmc interface (1) mmc2iec (1) mmm (1) mouse guts (1) oscilloscopes (1) pcm (1) pic32mx (1) porn (1) proto shield (1) purple (1) repo (1) retro computer museum (1) retro hard-on (1) rom box (1) sd (1) sd-x (1) sd2mmc (1) seadragon (1) silliness (1) small (1) software master (1) soldering (1) spi software master (1) stray capacitance (1) string (1) techadventure (1) test equipment porn (1) ts1000 (1) turtle cheesecake (1) tweaking (1) vc20 (1) video head (1) video ram replacement (1) weewee (1) wingasm (1) wire library (1) wodges of IO (1) xilinx cpld (1) yellowing (1) z80 (1) zx spectrum (1) zxpander (1)
Unless otherwise stated all of the original work presented here is:

Creative Commons License
Licensed under a Creative Commons Attribution-Noncommercial 2.5 Generic License.

The work of others where referenced will be attributed appropriately. If I've failed to do this please let me know.