Mac2Spec: Mac OS X --> ZX Spectrum Graphics Conversion

Mac2Spec v3.0 is released!

What does it do?

Mac2Spec converts various graphics formats to a ZX Spectrum scr and saves the result as a tap or scr file. Mac2Spec scales the input image to 256x192 and allows you to alter the RGB colour balance, posterize the image and apply an error-difussion or colour ordered dither. It also supports the extra screen modes of the Timex 2048. Version 3.0 adds native video handling and is compiled as a universal binary.

The following formats are supported:
  • JPEG
  • GIF
  • PNG
  • PICT
  • PDF
  • EPS
  • BMP - black and white bitmaps don't work!
  • MOV
  • AVI
  • ...
  • Basically anything that OS X / QuickTime understands (except black and white bitmaps)

    How does it do it

    Mac2Spec is written in Objective-C using the Cocoa frameworks

    Why?

    I was inspired by bmp2spec and bmp2scrPro. bmp2spec is a command line tool that converts black and white bitmaps to a ZX Spectrum screen file. Discovering that this built on Mac OS X was not enough - I wanted colour! My first attempt extended bmp2spec in this way but it was hell to debug! Graphics utilities really do benefit from a GUI interface... By the time I wanted to add dithering it was getting impossible to test changes quickly. This prompted me to write a GUI version and at the same time learn some Objective-C. This is my first Objective-C app so forgive the bugs. Well, time has passed and I ought to know better now. Version 3.0 re-organises a lot of the code in an attempt to make it more maintainable. Don't be so forgiving of the bugs now!

    Download

    Download Mac2Spec, and the source if you want it, from sourceforge

    23/11/2006 Update

    Version 3.0 released.

  • Universal Binary
  • Native Video Handling
  • Timex Hi-Res Mode
  • New Icon!
  • Code Overhauled
  • No AppleScript - sorry!

    26/08/2003 Update

    Nothing too fancy, just improved the threading for a decent speed boost for multi CPU machines.
    Check it out - sub 8ms conversion times on a 2x1.0GHz G4.
    Hint for Cocoa developers - NSConditionLock is likely to work better than a plain NSLock.

    14/07/2003 Update

    It's been a while so I hope it has been worth the wait.
    Mac2Spec v2.0 is released!

  • GUI has been tidied up
  • New 8x8 matrix colour ordered dither mode
  • Can export as .scr as well as .tap
  • Finer control over Floyd-Steinberg dithering
  •   Brightness slider to control how easy it is for an attribute to be bright
  •   Tolerance controls how Floyd/Steinberg dithers each attribute
  •     Standard Floyd/Steinberg
  •     Strong bias to black and white - good for scenes with greys
  •     In between - compromise of the above
  • Drag and Drop
  • Drag images onto the left hand view
  • Drag conversions from the right hand view
  • Mac2Spec is even faster!
  • Scriptable
  •   Mac2Spec responds to AppleScript
  •   'mac2spec script sample' outlines the basics
  •   'Mov2Spec' interacts with QuickTime to convert movies!

    Screenshots

    A few screenshots - yes that BMW is still there!
    Mac2Spec has started!
    convert that damned BMW
    La belle France

    Movies

    Bugs / Feature requests

    Send any bugs, requests, questions to jamesAT[SPAMBOTS MUST DIE]weatherleyDOTnet
    I'm sure you can work out the real e-mail address ;)

    This is my first attempt at an Objective-C program and I've only 'tested' it on my Mac so there are probably plenty of problems waiting to be revealed - but I'm getting better ;)