Friday, 13 September 2024

Thursday, 23 March 2023

blapper

Saturday, 18 February 2023

What's that smell?

The first production of the new development team Andrew and Sophia

Find the food.

Avoid the plastic rubbish.

Wednesday, 27 October 2021

fragments

my 1st typing game and my 2nd entry in the TeenyTiny DragonRuby MiniGameJam 2021


Tuesday, 12 October 2021

It's all balls

After a break for a while I have decided on a change of perspective / objective for Wally’s Folly.

When the original spudge (implemented in perl) was about 90% complete I decided to reimplement it in Go - this version was about 60% complete when I completely lost any drive to continue. This was about a year ago (or was it 2?).

So after this hiatus I’ve decided to work with a more modern set of tools.

I’m currently trying out ruby & the DragonRuby toolkit.
I’m new to ruby… It’s always interesting to learn a new language.

It’s so much easier to make progress using modern tools :)

Here's a link to the first silly game

my 1st entry in the TeenyTiny DragonRuby MiniGameJam 2021


Wednesday, 20 November 2019

spudge .850 November 20 2019

updates

bugfix: fix output format for filled pointer arrays
bugfix: fix unexpected output of animated font when not required
added __BASEFILE__ to predefined variable
bugfix: fixed assembler output of pointer arrays

library updates for sound, music, font animation, display list, graphics, logging and choosing options

Thursday, 28 March 2019

spudge .823 March 28 2019

spudge is now primarily developed on MacOS X - so it now works a little better on Mac.

bugfix: fix edge case handling for sound() with odd distortion values
bugfix: constant shift (2..7) of 2 byte into 1 byte now correctly uses both input bytes
bugfix: ensure libraries are loaded in the desired order
add open to run command when executing .xex after building on Mac OS X

library updates for sound, music, font animation

Wednesday, 29 August 2018

one year ago

August 29 2017 - begin planning the unnamed 8 bit language, the implementation began a few days later on September 1

it's been a year I guess it is finished and now's the time to really get into writing all those games on my list...

spudge .810 August 29 2018

a bugfix release (== optimisation bug)
spudge0810-2018-08-29.zip

Thursday, 9 August 2018

glyphy (August 2018)


editing and animating fonts


glyphy.zip
  • generally expected to be used under emulation (Altirra for me)
  • mapping the mouse to paddles 2 and 3 is assumed (may need to temporarily un-map other joystick and mouse devices when using this)
  • a host directory mapped as hard drives H1: and H6: is required to load / save / export data to host directory
  • can export spudge code for the font and animation data for use in other spudge programs
  • the filenames used are fixed so some file manipulations will be required at the host level
    • edited font and animations loaded from and saved to H1:glyphy.f8
    • export data is written to H6:glyphyex.spg
    • another user defined font will be loaded from H1:userfont.f8 (to allow some level of copying between user edited fonts)




spudge August 9 2018 release

this one has a couple of code generation bug fixes, a couple of language improvements (can use pointer as loop variable, improved support for pointer arrays, allowAuto keyword) but is mostly about library improvements

libPMG.spudge
a simple player / missile interface

libMouse.spudge
mouse pointer support, really only designed for use in emulators as it reads paddle positions rather than trying to support a real mouse

libFontAnimation.spudge
font animation

Tuesday, 5 June 2018

spudge release 2

Almost as soon as I started using spudge after the initial release I came across an expression evaluation bug, fixed that then found another :)

here's a slightly better version spudge0778-2018-06-05.zip

Wednesday, 30 May 2018

the Atari colours

; simple static colours
; colours.spudge
proc spudge() {
    repeat {
        colbk = vcount <<< 1
    }
}

or make it move...

; moving colours with a VBI
; coloursMove.spudge
proc spudge() {
    ; install interrupt to scroll the rainbow
    replaceDeferredVBI(rainbowVBI)

    repeat {
        wsync = 0
        colbk = rainbow + (vcount <<< 1)
    }

    ; flip the VBI back to where it was
    restoreDeferredVBI()
}
; a simple VBI to scroll the rainbow
byte rainbow
proc rainbowVBI() vbi {
    if !(%11 & jiffy) { ; scroll every 4th frame
        rainbow += 1
    }
    exitVerticalBlank   ; special VBI exit
}



hello world.spudge

proc spudge() {
    print('hello world?')
}

spudge initial release (0.767)

it's finally here!
the first public release of spudge a new Atari 8 bit programming language

see the previous spudge pre-announcement for the 'rationale' for behind this

here's a zip containing the current (alpha) version along with some documentation and example code
spudge0767-2018-05-30.zip

It has mostly been developed on Windows, but it should run on Linux and Mac OS X too.

how to install
1) unpack the archive as the spudge directory in your home directory
2) copy (from the spudge/bin directory) the spudge.bat (for Windows) or spudge (MacOSX, Linux) file somewhere on your PATH and make executable
   (chmod +x on MacOSX, Linux)

perl 5
spudge requires perl 5, install it if required
on Windows 10 I use Strawberry Perl (5.26 http://strawberryperl.com)
on Linux and MacOS X it's probably already there
any recent version (5.18.2 and 5.26 tested) will probably be OK

MADS
spudge uses mads to assemble the assembler code
install somewhere on your PATH
  http://mads.atari8.info/

how to run
1) open a command shell in your source directory
2) spudge -h

here is a tests directory in the spudge installation which may be a good place to start
      spudge -c hello-world.spudge