Jump to content

rje

Members
  • Content Count

    612
  • Joined

  • Last visited

  • Days Won

    17

Files posted by rje

  1. BASIC Pre-processor in Perl

    Scott's dev tool prompted me to post this one.

    This is a dev tool for people who write things in BASIC, but write it off-board, and like to have some more modern features. 

    This script runs best on a UNIX or (perhaps) a Windows environment.
    It supports
    (1) Labels.
    (2) Long variables.
    (3) Multiple source files.
    (4) "Ephemeral" comments.

    Your source files must not use line numbers.  This script will create them for you.
    Labels look like C64 LIST's:
     
    {:this is a label} goto {:this is a label} Long variables are actually namespaces that work for strings, floats, or ints.  They can have periods in them, so they can even vaguely resemble object field accessors. Declare and use them like this:
    longvar \thing.entry \thing.entry$ = "the thing!" \thing.entry = 5.0  

    Ephemeral comments start a line with a semicolon.  Their entire content is ignored and thrown away when the output BASIC source is built.  I think it's useful for development documentation that's not needed in the target BASIC 2.0 code.
    ; ;   This comment will never show up in the target code. ; This invokes the script, passes in files 1...n  (however many you have), and redirects STDOUT to a target file (here, output-file.bas).  That output file is ASCII source, and is directly loadable into the emulator via the -bas flag.  
     
    perl basic-labelmaster.pl file1.list file2.list ... filen.list > output-file.bas  
     
     

    3 downloads

       (0 reviews)

    Updated

  2. Lemonade Stand

    I played this game with my friends in grade school on the PET.  
    Though unable to find the original, I found a stripped-down VIC-20 version -- which showed me the program's essential structure -- and the later 1986 version by Commodore, mainly designed for the Commodore 64.  I used both to create this version, which retains the original algorithms, and tries to emulate the older PET version.
    It uses very little X16-specific code -- exactly, SCREEN and COLOR.  It relies on the 40 x 25 screen, and it uses just about all 25 of those rows.
    The rest is all PETSCII and BASIC 2.

    66 downloads

       (4 reviews)

    Updated

  3. 8sh

    https://github.com/bobbyjim/x16-8sh
    This is the early early stage of an attempted "shell" for the X16.
    By definition, a command shell is an interpreter that exposes the system.  In practice, the shell exposes the system through an immediate-mode scripting language, which can also be executed from a file.  The Commodore computers' boot mode is a kind of "BASIC shell".
    This shell currently does almost nothing.  I am slowly working out a set of mid-level operations for it, and plan to add the shell's command inventory on top of that. Then, I'll add the ability to run full scripts from file.  Then, I'll add the ability to "pipe" the output of one script into another.  In this manner, I hope to build up a small inventory of useful utilities.
     
     
     
     

    30 downloads

       (1 review)

    Updated

  4. Hex dumper

    A hex dumper I wrote, because I wanted one like the one I've got on my UNIX machines.
    It should be able to handle "proper" address 0 RAM banking, as well as r38 RAM banking (it checks the KERNAL version).
    Set the color with the number keys.
    Change the view by $100 with left/right cursor, by $300 with up/down, and by $1000 by enter/left arrow.
     

    23 downloads

       (0 reviews)

    Updated

  5. Audio Demo - Invention 13 (used in Commodore promotions)

    I was missing Bach's "Invention 13", and so here's the first 13 bars that Commodore Business Machines used in the early 80s for Commodore product promotions.

    37 downloads

       (1 review)

    Updated

  6. Traveller-Trader WIP

    This is the beginnings of the Traveller trader rewrite.  At the moment, it's here for feedback from my playtesters.
     

    420 downloads

       (0 reviews)

    Updated

  7. Pirate Kingdoms

    A demonstration of the use of BASIC, sprites, and banks to create a tiled map.
    Everything is quite primitive right now.  The response time is slow.
    The map is 256 x 256 and stored in banks 10-17 (it's 64k).  My plan is of course to make it larger.
    Use the cursor keys to move about the map. 
     

    613 downloads

       (0 reviews)

    Updated

  8. Traveller UWP generator

    A quick UWP generator.
     

    10 downloads

       (0 reviews)

    Updated

  9. 64x64 Ship Sprites

    This simple demo loads five 64x64 8-bit sprite images into VRAM, each an ancient sailing ship.  Sprite 0 is turned on to point at them; press spacebar to cycle through the images.
    Use the cursor keys to move the sprite around the screen.  The spacebar will also stop the movement.
     

    28 downloads

       (1 review)

    Updated

  10. Traveller-Trader (mini)

    This is a space trading simulation using Traveller ships, worlds, trade rules, and so on.  It contains over 500 worlds in and around the Spinward Marches, and it's primitive.  I've been working on an improved version; for now, this playable version serves as a test.
     

    15 downloads

       (0 reviews)

    Updated

  11. Rogue Forest

    This is a work in progress, which means there's lots of missing functionality, the UI is rough, there are unfinished bits, and there's no "win" or "lose" condition, yet.
    The map is revealed as you explore.  There are two kinds of treasures -- weapons and armor -- and one special treasure: the Amulet of Yendor.  The goal of the game *will* be to find the Amulet of Yendor and exit the forest with it.
    There are 31 monsters in the forest.  They (currently) are not differentiated, except by name.
    Movement is via the cursor keys.  Trees are impassable.  "Bump" a monster to attack it.
    There are no special commands, yet.
     
    I will add some sound effects before promoting it to 1.0

    119 downloads

       (3 reviews)

    Updated

  12. Hammurabi

    I typed in the 1970s era BASIC game "Hammurabi". I then sprinkled in just a few Commodore BASIC bits to format the screen slightly.
    The project is https://github.com/bobbyjim/cmd-hammurabi
     

    51 downloads

       (0 reviews)

    Updated

  13. LUNAR

    I typed in the 1970s era BASIC Lunar lander game. 
    The source is saved with this project: https://github.com/bobbyjim/cmd-hammurabi
     
    lunar.bas LUNAR.PRG

    45 downloads

       (3 reviews)

    Updated

  14. Banner

    An assembly language routine which prints "banner" text using PETSCII.
    # How to Use
    This code is currently compiled to banked RAM at address $A000. Load the PRG file into memory at $A000. Poke the desired PETSCII character code into $A000. Call the routine at $A001. e.g.
    ```
    LOAD"BANNER-FONT.PRG",8,1,$A000
    POKE $A000, 65 :REM "A"
    SYS $A001
    ```
    # Supported Characters
    Version 1 only supports A-Z and space. The characters are 3 x 3 characters in size, with a special "space" character that is 2 characters wide. # How to Compile
    This is the command I use to compile the source: ```cl65 -o BANNER-FONT.PRG -t cx16 -C cx16-asm.cfg banner.s```

    53 downloads

       (0 reviews)

    Submitted

×
×
  • Create New...

Important Information

Please review our Terms of Use