Jump to content


Popular Content

Showing content with the highest reputation since 05/20/21 in Files

  1. Version 0.9


    Modplayer Plays audio files that are stored in Amiga tracker module format. Usage when running via emulator, increase the audio buffers by starting it with: x16emu -abufs 32 LOAD "MODPLAYER.PRG" RUN type file name, e.g. "D1.MOD" (you can change or correct it by using the "del" key) press "enter" enjoy! Features supports standard 4 channel mod files supports mod files with size up to 504 KB or higher depending on CX16 memory configuration user interface shows each channel with tone, instrument number and effect mod file name can be set via keyboard Known issues and limitations sample rate is set to about 18 kHz, 8 bit, stereo to fix timing issues with channel mixer volume is reduced by half to avoid clipping no finetune for instruments only supported effects are: "slide up/down", "set volume", "pattern break" and "set speed" "set speed" effect doesn't support BPM setting player speed can be slightly off as it is based on 60 Hz vsync signal wheras many mod files are based on 50 Hz PAL signal first 2 letters of song name are missing due to the way how the kernal load routine is implemented no control unit yet License Some sample mod files from different composers are included with this application. All included mod files were downloaded from [The Mod Archive](https://modarchive.org) and are licensed under Public Domain or Creative Commons. The original file names were changed to work around file name problems. List of included mod files and its original file names: D1.mod source: [songerson_-_dog39.mod](https://api.modarchive.org/downloads.php?moduleid=189675#songerson_-_dog39.mod) by [Songerson](https://modarchive.org/member.php?90970) is licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/) D2.mod source: [musix-retrospective.mod](https://api.modarchive.org/downloads.php?moduleid=65133#musix-retrospective.mod) by [m0d](https://modarchive.org/member.php?69141) is licensed under Public Domain D3.mod source: [music-jump.mod](https://api.modarchive.org/downloads.php?moduleid=53213#music-jump.mod) by [m0d](https://modarchive.org/member.php?69141) is licensed under Public Domain D4.mod source: [evil_minded.mod](https://api.modarchive.org/downloads.php?moduleid=170000#evil_minded.mod) by [Zilly Mike](https://modarchive.org/member.php?69027) is licensed under [CC BY 3.0](https://creativecommons.org/licenses/by/3.0/)
    10 points
  2. Version 1.0.0


    This is the release of a STNICCC Demo Remake for the Commander X16! I have been (silently) working on this for the last couple of weeks/months. It is time to release it :). Let's just say: the Commander X16 is far more powerful than I had thought! Here is a video of it running: Enjoy! Regards, Jeffrey --- PS. There was an earlier attempt to remake this demo on the X16 (done by Oziphanto on youtube). Oziphanto did a very nice comparison video of the X16 with several other machines of the 8-bit and 16-era: He also re-created this demo, but (in my opinion) did not do such a good job extracting everything out of the X16: his demo ran in 2:32. The remake I made does it in 1:39! His benchmark comparison should therefore be updated: Keep in mind the Commander X16 only has: - An 8-bit 6502 cpu (8MHz) - No DMA - No Blitter Yet it keeps up with 16-bit machines like the Amiga! (actually its even faster right now) --- Extra notes: - This only works on the x16 emulator with 2MB of RAM - It uses the original data (but its split into 8kb blocks, so it can fit into banked ram) - Waaaayyy to much time is spend on the core-loop to make it perform *this* fast! - My estimate is that it can be improved by another 10-15 seconds (I have a design ready, but it requires a re-write of the core-loop) - It uses a "stream" of audio-file data and produces 24Khz mono sound (this will not work on the real x16, since loading the files that fast is a feature of the emulator only) Here is a version without audio (so this should run on a real x16): And it runs even faster (1:36:90)
    9 points
  3. Version 1.0.0


    This demo is made from original game assets and translating the VGM tune into YM2151 + VERA PSG. I made this demo because I think too many people forget just how great the graphics can be on the X16. I also think the FM music is vital to the 16-bit era of gaming, so this demo shows how the Commander X16 can deliver the goods if you like a 4th-gen experience.
    8 points
  4. Version 1.0.0


    This demo features 3D rendering to a 256x240@8bpp surface with full transformation calculation, texture mapping and per-pixel depth buffering. The model is a decimated Spot test model with 512 vertices, 1020 triangles and a 256x64 texture. So, I wrote this just to get familiar with this system and figure out how to write and optimize a 3D math for it. Also, it would makes a nice reason for me to get up and do some coding streams, as shown here: Only runs on r39 since I can't find documents for older versions. There's still bunch of incorrect pixels due to depth buffer precision problems. Controls: A/D - Move camera left/right W/S - Move camera up/down Q/E - Move camera backward/forward (Z value should be an unsigned number but the UI only displays signed numbers) J/L - Rotate left/right (yaw) I/K - Rotate up/down (pitch) U/O - Tilt left/right (roll)
    8 points
  5. 40 downloads

    Hope you enjoy this little intro! Best viewed on a local emulator. The web one doesn't seem to handle the audio too well. More on the audio player: Original mod by Archyx. See their other mods here: https://modarchive.org/index.php?request=view_artist_modules&query=69244 Thanks for looking. R38: Working R39+: Doesn't work (has bank switching)
    6 points
  6. Version 1.0.0


    Slideshow showing some of the progress of the Commander X16 project.
    6 points
  7. Version 1.0.0


    I just started assembly programming last week and this is my first project after about three days of work. I hope you enjoy it! The effect isn't quite complete yet but for now its all I'm able to get working.
    6 points
  8. Version 2.0.1


    Writing BASIC programs longer than 10 rows on the X16 is a tedious experience. The text editor is very limited, much is about struggling with row numbers. This is an extremely simple compiler (sort of at least) for Windows that lets you write your BASIC programs in your favourite text editor with labels. The compiler outputs a new text file with the extension ".bas". It adds row numbers and fills in the right row number after the commands "GOTO", "GOSUB" and "THEN". No installation is needed, just copy the only file to the directory of your choice. Usage: x16LabelCompiler <filename> [first row number] [step between row numbers] Labels must end with a colon (":"). Labels must not be reserved keywords in BASIC. Labels are preserved in the generated code by inserting "REM" before them. Empty rows are removed. All letters are converted to uppercase. A sample program called "guess_the_number.txt" is included. To compile the program: x16LabelCompiler guess_the_number.txt To start the emulator, load the generated file and run it immediately: x16emu -bas guess_the_number.bas -run
    5 points
  9. Version 1.0.0


    Got a day to kill with your X16? Run this BASIC program and generate this 256-color fractal plot. It's zoomed into a deep part of the Mandelbrot Set that is particularly pretty. This plot does up to 355 iterations and is within an area where all points require at least 100 iterations, so the whole 256-color palette is able to be represented, from white for 100 iterations to black for 355 iterations or more. For fastest results, run in "warp" mode with your emulator: x16emu -warp -bas x16-mandelbrot-vga-fancy.bas At 8Mhz, this will take literally all day, but if you have a beefy enough host for your emulator, it can be cranked out in a couple hours. Enjoy! From: https://github.com/SlithyMatt/multi-mandlebrot
    5 points
  10. Version 1.0.1


    While waiting for the X16 to get real, I started to design my own computer case. I want it to resemble the keyboard or wedge-shape cases of the 80ies era. I owned a TI-994A and a Atari ST back then and I wanted to have something similar where I can put the X16 board in. I've integrated a Xtrfy TKL K4 keyboard and integrated a MISTER, Raspberry Pi (and a KVM Switch). I've published the design on Thingivers, where you can find the latest versions (I won't update here): >>Link Assembly might be a challenge and you have to see what type screws to use to mount things together. LICENSE: Creative Commons Attribution-NonCommercial-ShareAlike (CC BY-NC-SA 3.0)
    5 points
  11. Version 0.0.7


    BASLOAD lets you write BASIC programs without line numbers in the editor of your choosing. BASLOAD runs natively on the X16. As it's name implies, BASLOAD loads BASIC programs stored on the SD card into RAM. While loading a file, it's tokenized so that it can be run by the X16's built-in BASIC interpreter. Source files are stored as plain text that can be edited in almost any editor on the X16 or on a modern computer. There are, however, special bindings for the text editor X16 Edit making the programming workflow more convenient. Instructions on how to use BASLOAD and source code may be found here: https://github.com/stefan-b-jakobsson/basload BASLOAD workflow.mov
    5 points
  12. Version 1.0.0


    Early Amiga-demoscene inspired raster bars with color gradients. The color gradients are randomly generated. Written in Prog8 with a bit of inline assembly. Source code is available here https://github.com/irmen/prog8/blob/master/examples/cx16/colorbars.p8
    5 points
  13. 52 downloads

    As has been pointed out recently there is tooling for the X16, especially in terms of trackers. There have been a few great examples of music on the forums, either playing a Amiga\C64 mod, or via a X16 tracker. And these are great. That said, I did think maybe the community was missing a trick. If the goal is to make music for the X16 do we need to be able to run the tracker on it? Doesn't that make writing everything harder? If you have a modern machine, it would be easier and quicker to create a tracker on that. UIs are easy. MIDI keyboard integration is a mere nuget package away. Can hand edit json files if you want. IO is trivial. That's not to say writing a tracker for the X16 is wrong, it's just a different goal. So that's what I did. Apart from the emulation of the X16's PSG which took a while to get going, it wasn't so bad to do -- WPF aside. I've ended up with an application which lets me produce X16 music. It can export an .asm file which can be imported into ca65, making integration into a project really easy with just two calls. It only uses single digit worth of cpu lines and 32 bytes in the ZP, so is pretty lean. That said, it does not yet support PCM audio not commands. The music from file attached is sourced from part of a demo file that comes with FamiTracker. What did occur to me while doing this, is that VRC6 ( https://en.wikipedia.org/wiki/Memory_management_controller#VRC6 ) music is pretty damn good. In fact I'm sure a player for .ftm files could be written. (Given how long it took to get just the first 3rd of a demo file working, I might write a pattern importer myself..!) For me, the audio quality demonstrates that Vera's PSG and some form of PCM is all that's needed for audio on the X8/16. (Sharpen your pitchforks!) It just needs to be a bit louder! What next? Like all projects that have gone from 'Proof of Concept' to 'Production' in one step, has resulted in some of the code being a bit crap. Especially on the WPF side! If anyone is interested, I'll try to shore the code up and will post with an explanation of how it works soon. For now the display shows the four counters. Counters for Frame, Line, Pattern, and the Next Line. Source is the VRAM address (I use VERA to stream out the data for the patterns, as it makes life much easier. I can't understate how useful this feature is.) The bottom table is: VERA registers Address of the instrument data Instrument Position Command Note Number Instrument Repeat Command 2bytes Parameters
    5 points
  14. Version 1.0.1


    X16 Forum This is my third "Double PETSCII" demo. But this time around, the colors are gone. It is only black and white. This is a converted PETSCII picture, the trick was to see if with no colors still some nice effects could be done. Besides PETSCII, there are also a few effects. The demo is written in KickC, and the PETSCII editor is once more the alfa version of HyperPetscii. The link to this can be found here: https://hyperpyxel.com/?p=229 Note: It is still pretty unstable and does not work well on a browser in the MAC for some reason. If you cannot run it on an emulator, you can see it on youtube here: https://youtu.be/3x7OieGqQCg Keep cool, and keep it (DOUBLE) PETSCII.
    5 points
  15. Version 0.8


    Simon Snake has fallen down a hole, you must rescue him, by avoiding obstacles on his way down. Controls: Cursor Keys, for left and right. Space to start or continue the game. Falling snake was a game that I wrote on the C64 in Basic, but now converted to KickC, because I want to add more features to it, and was running on the limits of what I wanted to squeeze into Basic. All graphics, except player sprite are Petscii. "Cut Scenes", are in "Lores Double Petscii". The Basic version you can also find below as a tutorial "How to create a simple game in basic on the X16" This time the game is written in Kickc, allowing more features to be added. Current status: 90% of all Basic features have been converted to C. Extra features have been added that were easier to add in C, like "cut scenes". Sound and more game play elements are to be added still. Video below. (music added in post production)
    5 points
  16. 21 downloads

    A new little intro, featuring full frame rate vectors! Original music by cerror. See their other music here: https://modarchive.org/index.php?request=view_profile&query=85822 Thanks! R38: Working R39: Working R40+: Untested
    4 points
  17. Version 1.0.0


    This is a console application for Windows that will convert png images to a format that the video controller (VERA) of the Commander X16 can read. Both indexed images (which contain a palette) and full-color images are supported. The original file can contain an image or a number of tiles or sprites with max 256 colors. For conversion of images, the width of the image must be 320 or 640 pixels. Height has no restrictrions. For conversion to tiles or sprites, the width and height of each tile/sprite must be specified. COLORS Bits per pixel (BPP) in the generated file will depend on how many colors the conversion results in. The number of colors might be reduced because the color depth of VERA is limited to 12 bits. In other words several 32-bit colors in the original image might be converted to the same 12-bit color. Semitransparent colors (0 < alpha < 255) will be treated as solid colors. For conversions of images with 16 colors or less, up to 13 colors will be displayed in the console window. Due to limitations of the console itself this is the maximum number that can be displayed correctly. TRANSPARENCY The first color of the palette might be transparent when rendered by VERA. This is for example the case when a sprite is rendered in front of a layer. Therefore it can be absolutely crucial which color in the original image that will receive index 0 in the generated palette. The selection is made in the following way: 1. If the original image is indexed (has a palette), the color with index 0 in the original will also receive index 0 in the converted image. 2. If the user has explicitly stated which color should be the first, this color will receive index 0. 3. If nothing above applies, the color of the top left pixel will receive index 0. OUTPUT At least two files will be generated: a binary file with image data and the palette in binary format or in the format of assembly source code or BASIC. As an extra bonus a BASIC program that displays the image/tiles/sprites can be generated. INSTALLATION The application is for Windows and depends on .NET 6.0. No installation is needed, there is just one executable file. SYNTAX X16PngConverter [-help] [FILENAME] {-image|-tiles|-sprites} [-height] [-width] [-palette] [-transparent] [-demo]. OPTIONS (No arguments) : Displays this text. -help/-h : Same as above if it is the first argument. FILENAME : If the name of the file is the only argument, the original image will be analyzed to see if conversion is possible and in that case which options that are possible. -image|-tiles|-sprites : Set conversion mode (mandatory). When image mode is used the original image must be either 320 or 640 pixels wide. -height/-h : Set height of tiles or sprites (not used when converting to a bitmap image). Valid values for tile mode are 8 and 16, for sprites 8, 16, 32 and 64. -width/-w : Set width of tiles or sprites, (not used when converting to a bitmap image). Valid values are the same as for height. -palette/-p : Set file format for the destination file that contains the palette. Valid values are: bin - a binary file asm - text file containing assembly source code) bas - text file containing BASIC DATA statements). If this option is omitted, all three files will be created. -transparent/-t : Set which color that will have index 0 in the generated palette. The value must be a 32-bit hexadecimal value in the following format: $aarrggbb where a = alpha, r = red, g = green and b = blue. -demo/-d : Generate a demo program in BASIC. This can be loaded to the emulator by using the -bas option. For example: x16emu -bas mysprites_demo.txt. To run it immediately add the option -run. Using this option will cause a binary palette file to be created. EXAMPLES X16PngConverter : Display help text. X16PngConverter image.png : Analyse image and see if it is possible to convert. X16PngConverter image.png -image : Convert to a bitmap image (width must be 320 or 640 pixels). X16PngConverter image.png -tiles -h 16 -w 16 : Convert to tiles with a widht and height of 16 pixels. X16PngConverter image.png -image -p asm : Convert to sprites and output palette only as a file with assembly source code. X16PngConverter image.png -image -t $ff88aacc : Convert image with the specified (potentially transparent) color as the first in the generated palette. X16PngConverter image.png -image -demo : Convert image and generate a BASIC demo program named image_demo.txt.
    4 points
  18. Version 1.0.0


    Fractal Mania (fracman) is a Mandelbrot and Julia Set generator/explorer, written in 6502 assembly language. It uses 320x240x256 color mode, supports mouse and keyboard input and if an sdcard image is attached, will cache each plotted image to disk, so that the user may go back and forth, among the generated images. These images are currently only available for that session, but a future version will allow reloading of previous session images. Iteration support is from 16 to 256 and the slightly modified color pallette may be shifted by 16 places per each use of the command key. Help screens are available at program start and by using the 'H' command key. To speed image generation up to a snail's pace , fracman draws every other column, the other columns can be drawn if desired. Thanks to those in the CX16 community that post/have posted code, demos, videos, tutorials, etc., without which, this program would not exist!
    4 points
  19. Version 0.5


    I had been lurking on the forums for a few months when I found Prog8 and though this looked interesting. I.e. I could learn a new language and test out the emulator. I recently saw some good demos using C64 emulator but just based on PETSCII graphics and I though this looked surprisingly cool. Then I remembered the old Galaga game on the C64, the one using just (a few) petscii chars. I thought making something similar would be a nice challenge. The game is continuing to move toward what I consider a complete (but short) game. There are now 12 levels at which point the game will end in victory (bonus points for lives remaning). I am currently inclined to thinking that it's ok to end up with a fairly short and "completable" game. I still need to add some sort of simple high score handling. And there are always places that could use a bit of extra polishing but perhaps it would be better to spend that effort on another game. If anyone want to have a look at the code, it's here : https://github.com/cyborgar/Petaxian
    4 points
  20. Version 1.0.1


    I've been investigating the feasibility of using fantasy console development environments to develop new fantasy-console-style video games for the Commander X16 and also to potentially port existing fantasy console video games to the Commander X16. I've primarily been investigating the PICO-8 and TIC-80 fantasy consoles (see https://www.lexaloffle.com/pico-8.php and https://tic80.com/ ), but there are a variety of fantasy consoles/computers (see https://github.com/paladin-t/fantasy ).This Commander X16 demo repetitively cycles through sequential display of the PICO-8 color palette, sprite sheet, and 16 screens of the map that I imported from the PICO-8 CELESTE video game by Matt Thorson and Noel Berry which was the initial basis for their computer/console version (see https://en.wikipedia.org/wiki/Celeste_(video_game) ).
    4 points
  21. Version 0.7.1


    This is a space invaders inspired game. Use the mouse or joystick to control the player ship. The shield segments can take 2 hits each. If enemies get too close you retreat back to the last level. You lose when all your lives are gone or you fall back to earth level again. Now with 7 playable levels Requires emulator R38! Roadmap: more diverse enemy formations enemy attack raids over the sides power ups (shields, double cannon, disruptors etc.) boss enemy joystick control done music done Different enemy sprites. done Sprite animations. done for player sprite and enemies fade in/out of palettes and backgrounds. done more levels with more backgrounds (all planets of the solar system), done sound effects basics done title screen How to use with the local emulator: Unpack ZIP file into the same directory as the emulator. Start the emulator, then enter LOAD"INVADERZ.PRG" RUN
    4 points
  22. Version 1.0.0


    This is a very basic text CYOA game. I made it in about a day as a proof on concept to prove to myself I could make a video game. My next projects will be more complex as I get a grasp of basic and assembly code. I hope you enjoy here is a short description. You play an adventurer looking for the lost chalice of King Linus. You finally find the right pyramid and must go through some puzzles and avoid traps to finally find what has eluded you for over a decade. Will you survive to tell the tale? egyptadv.wmv
    4 points
  23. 31 downloads

    A simple 8-bar loop song bringing you dance floor vibes. To reduce jitter and audio dropouts, run the demo locally. It uses all 16 PSG voices and a couple of FM voices. Would you like to code some graphics to be accommodated by this song? Send me a PM
    3 points
  24. Version 1.0.0


    This is a character editor written in BASIC. Both layers are being used so all 256 characters in a font can be modified without affecting the program. The start-up of the program is slow due to character rom being written into layer 0 so it can be edited. Also had to clear layer 0 ram. Unable to use Try-In as program requires the the CHAR-EDIT-IF file. Once the program is loaded you can press L to load the EXAMPLE1 file so see an alternative character tile set. Download the SD image to use. I've made an assumption about where the required interface data file is located and where the user data files will be. Unzip the sdcard-pal-edit.zip file and start the X16 emulator x16emu -sdcard sdcard-pal-edit , once it starts load"*",8 and run it. CHAR-EDIT-IF EXAMPLE1.CHAR CHAR-EDIT.PRG char-edit.bas sdcard-pal-edit.zip
    3 points
  25. Version 0.3-beta


    You get six chances to guess the secret word. It is one of about 2500 commonly-used English words with exactly 5 letters. Just type the word and hit RETURN/ENTER to see if you guessed it correctly. If you had any letters in the correct position, they will be highlighted as green. If you guessed a letter that is in the secret word, but in the wrong position, it will be yellow. Any letters that aren't highlighted are not in the secret word, so you can eliminate those from later guesses. For more information and the code (which also can be built for the Commodore 64), check out the repo on GitHub: https://github.com/SlithyMatt/cbm-wordslide If you see any apparent bugs, or words that should or shouldn't be included in the list, please enter an issue on GitHub, or a pull request with your own fix -- adding or removing words from the list (2500words.txt) is trivial, and an easy way to contribute to this project!
    3 points
  26. Version 0.10


    cc64 is a small-C compiler, written in Forth, targeting the 6502 CPU. It's hosted on the C64, on the C16 with 64k RAM, and now on the X16. Runtime targets are available for all 3 platforms, on each host, allowing cross-compilation. The code lives at https://github.com/pzembrod/cc64. It's licensed under the 2-clause BSD license: https://github.com/pzembrod/cc64/blob/master/COPYING See https://github.com/pzembrod/cc64/blob/master/Usage.md for usage. See https://github.com/pzembrod/cc64/blob/master/C-lang-subset.md for details about the supported subset of C. See https://github.com/pzembrod/cc64/blob/master/Lib-reference.md for the the LibC subset that comes with cc64, plus the lib's deviations from the standard.
    3 points
  27. Version 1.0.0


    Crazy Lander is another (mostly) BASIC game for Commander X16. We will introduce some new technologies not used before in our projects. It is a variation of Lander type games where we have to guide and land the space capsule to dedicated platforms using thrusters and navigating through natural and man-made obstacles. To make the game more challenging we have to be mindful of the fuel used and land gently. Few highlights: Running in bitmap mode It is a game of precision so we have to assure pixel perfect collision control Animated obstacles unique to each level Music and sound effects Project Specs Emulator Version R.38 Low resolution bitmap mode 320 x 240 in 16 colors on Layer 0 Use the menu system to choose difficulty, turn music on and off, display instructions, quit and of course start the game Animated sprites for displaying capsule as well as thruster exhaust and explosion animation Tile layer 1 is used for HUD and for messages and menus Assembly subroutine for pixel perfect collision detection 4 distinct levels with flexibility to add more Scoring is based on the landing platform multiplier times the remaining fuel Keyboard/Joystick controls Left Arrow / Joystick Left fire left thruster pushing lander right Right Arrow / Joystick Right fire right thruster pushing lander left Space / Fire button main thruster pushing lander up Music in the background using Music Library for BASIC programs Sound effects using direct programming PSG from BASIC using VPOKE 256 color splash screen
    3 points
  28. Version 2.1.0


    A simple file that graphically shows the values of several registers in the X16 which change regularly -- for example, the top of the accumulator stack, and some of the I/O registers. It's an attempt to replicate the "blinking lights" of systems that used to use big ol' LEDs to represent register contents, alarm bars, and whatnot. The C source is here: https://github.com/bobbyjim/x16-blinkenlights
    3 points
  29. Version 1.0.0


    Another small intro. Sadly still no audio. If only it wasn't so painful to debug audio and if I had any sort of musical talent... Thanks for looking! Spinner.zip
    3 points
  30. 18 downloads

    Edit: I am not currently developing this project. I'll leave this here as it might be interesting to someone! Happy New Year all! Given the site is a bit slow, I thought I'd show off the latest version of my player. The biggest change in the latest version is that the commands now have 2 bytes of variable space to store their state, hopefully leading to some more interesting effects. You can hear an example with the 'warbling' on the track included. It's not vibrato by any stretch, but adds a little something. Hopefully you can hear the difference to the previous version here and agree its an improvement! (I am by no means a musician, so your mileage on that may vary!) The 'tracker', BitPlayer, that I'm using and developing is still relatively basic in terms of its UI, but is slowly but surely maturing. This uploaded .prg file is what is produced when the X16 emulator is launched from the tracker. It's all hosted on Gitlab here. The .json file attached is the 'mod'. There are of course a fair few things to do, the list is something like this: PCM support Change the output to my own new templating engine instead of ca65 YM2151 support (X8 depending) Change the sound engine to use a common engine with the emulator that better represents the X16 - Probably by embedding a emulator directly into the application The new templating engine removes all the typical restrictions that 'macro assemblers' can have. It's written in c# and is currently based on the Razor engine. As such it's easy to embed within an application like BitPlayer to produce 65c02 asm. The engine and the compiler have a little way to go, but if you're interested there is more information here. The track was originally by Archyx and can be found here.
    2 points
  31. Version 0.1.2


    This is a small, proof-of-concept C program which tests KERNAL functions on the X16. Routines currently tested: chrout memtop, both read and write membot, both read and write setnam setlfs load to RAM load to VERA (well, sort of) set time and read time It uses CC65's library to set registers and invoke routines. The source code is here: https://github.com/bobbyjim/x16-kernal-test
    2 points
  32. Version 1.0.0


    Here is the 2021 version of my X16 Christmas Demo, including new graphics and my own YM2151 arrangement of "The Carol of the Bells".
    2 points
  33. Version 1.0.3


    A Sokoban clone for the Commander x16. This started out, mainly to see if I could grasp the concepts behind the x16. No sounds or music, since this is a pure puzzle game. I have put in a fun level set called 'Sasquatch IV', publicly available at http://sneezingtiger.com/sokoban/levels.html. The code for this game can be found at https://github.com/envenomator/x16Sokoban.git Have fun!
    2 points
  34. Version 1.0.0


    The Commodore Labyrinth demo written entirely in BASIC from the early 80s. I've updated it a little bit and I'm trying to understand and untangle some of the spaghetti code. LABYRINTH.PRG labyrinth.bas
    2 points
  35. Version 1.0.0


    Akalabeth: World of Doom (1979) by Richard Garriott, AppleSoft basic ported to the Commander X16 by Justin Baldock. When starting I recommend you buy some food. This game is very unforgiving. This game was a little tricky to port, it leaves about 124 bytes free of Basic memory. I've added some colour to a few of the enemies. https://github.com/JustinBaldock/X16-Akalabeth Keyboard commands in play. N = Move North / Foward W = Move West / Turn Left E = Move East / Turn Right S = Move South / Turn Around X = Statistics A = NA / Attack - = Pass / Pass P = Toggle Pause D = Climb Ladder / Enter Town/ Enter Castle / Climb Down Q = Quit AKALABETH.PRG akalabeth.bas
    2 points
  36. Version 1.0.0


    This is a little tool written in BASIC to display the VERA palette and let you edit the colours. A palette file can be saved or loaded. A palette file is simply all 256 colours saved out of memory. The interface was drawn using PetDraw16. The program and files are on a SD card image. Simply attach and load pal-edit then run. Code available from https://github.com/JustinBaldock/X16-SpriteEdit
    2 points
  37. Version 1.0.0


    This is the upper+lowercase non-C64 "PET" or "VIC-20" font. In cc65, it can be loaded like so: cbm_k_setnam("pet-case.bin"); cbm_k_setlfs(0,8,0); cbm_k_load(2, 0x0f800); Warning -- changing the case (e.g. cbm_k_bsout(14)) will reset to the default font.
    2 points
  38. Version 0.3


    City Connection for x16 Initial vlog: Update: VLOG #2 Update: VLOG #3
    2 points
  39. Version 2.1; 1.0; 0.2


    This is a single program listing that contains three different versions of the Proteus Demo from my thread in HOWTOs on converting and optimizing BASIC programs. Version .02 was from very early in the conversion/optimization process from that thread and, consequently, is quite slow. Its also got the original author's bad scaling coefficients, which make the output look a little gnarly. Version 1.0 was originally what I thought would be the 'fully optimized' version, with all sorts of things (documented in the thread) done to squeeze out better performance. And of course the scaling is fixed so the output looks better. This was supposed to be the end of the thread, except that... Version 2.0 takes advantage of something I noticed about the calculations, which led to the idea to have the program start off by precomputing a table that allows us to avoid having BASIC redundantly performing a bunch of the most expensive operations in the program. Even considering (and counting) the over minute-and-a-half it takes to initially compute the lookup table, the trick resulted in nearly halving the time to complete plotting the output compared to what was the previous fastest version. (Of course, I now wonder if some of the better math and coding gurus have been rolling their eyes all along, just wondering when, if ever, I might figure this part out...). Just RUN it and pick A, B or C from the menu. When its done plotting and puts up the elapsed time (its in HHMMSS format) you can press any key, and it will 'LIST' the program lines that correspond to the version that just completed plotting. I hope folks find it helpful having the three versions (and the howto thread) in terms of seeing how the thing evolved. You will notice that the more tweaking you do for speed, the more opaque and confusing the program becomes in terms of ever expecting someone with fresh eyes to try and see what the heck is going on. That 'early' version is included, in part, because its much easier to follow than the others. More info at the thread here:
    2 points
  40. Version 1.0.1


    This is a proof of concept of a Core War VM for the X16. It implements all ICWS'88 opcodes (plus a couple extra); as proof of concept it runs many of the "historical" redcode programs from that period. It has a PETSCII arena view which follows colorized redcode programs. Up to 8 programs may run at a time, and each may have up to 8 processes. It does not handle operand expression math. The project is here: https://github.com/bobbyjim/x16-corewar
    2 points
  41. Version 1.0.1


    How many sprites does the Commander X16 have? Let's find out, shall we! Written in Prog8. Source code is here: https://github.com/irmen/prog8/blob/master/examples/cx16/bobs.p8
    2 points
  42. Version r41 ("Marrakech")


    Precompiled emulators for Windows, Mac, and Linux. This is the latest version. Older versions can be downloaded from the GitHub releases page. (Note: To run on Mac use "Ctrl-click/Right-click > Open" instead of "Double-click" due to security protocols)
    2 points
  43. Version 1.0.1


    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
    1 point
  44. Version 1.2.1


    This is a Breakout/Blockout/Arkanoid inspired game. . It is my very first try on the X16. You have to use a mouse or a joystick (cursor keys + enter on the emulator) It's only tested it on the emulator (R37, R38), so if anyone of the few with real hardware can give it a go, I'm eager to know the result. Available power ups (no keycodes, you have to catch the dropping badges): [L]: adds one live to player [M]: paddle is magnetic for 30 seconds. Can only hold one ball at a time. [C]: twin laser cannon for 15 seconds, 16 rounds in a row (if you are quick). [D]: Duplicates ball, so now you can have fun with 2... Keyboard commands: 's': sound on/off. 'p': pause game 'q': quit game. How to use with the local emulator: Unpack ZIP file into the same directory as the emulator. Start the emulator, then enter LOAD"BRIXX.PRG" RUN Or use the "Try now" button. Let me know what you think...
    1 point
  45. Version 1.0.1


    I needed a test program for the graphics routines in Prog8 that now also work in highres 4 color screen mode. I thought it would be fun to replicate a classic Amiga Workbench desktop screen, using just the graphics drawing commands. Note that the text font is actually the built-in iso charset. It is fairly similar to the Amiga's topaz font, so I just went with it and didn't bother to replicate the font pixel-perfect. Also I didn't bother to make a nice white/red sprite mouse cursor, maybe I'll try to add this in a later version. Here is a screenshot of a real Amiga Workbench 3.1 in action:
    1 point
  46. Version 0.1.1


    Version 0.1 This software converts indexed and RGBA images in the formats PNG, JPG or GIF into binary data suitable for the VERA chip in the upcoming 8-Bit Computer Commander X16. Basic usage: Open an image file using File/Open... Configure the settings according to your needs. Export the image using File/Export Bitmap/Tiles/Sprites... Image Modes: You can open either an indexed image with an embedded palette or a regular RGBA image. Depending on the image mode, the software behaves slightly differently. RGBA: In RGBA mode, VGC needs to match the pixel colors to the colors in the palette. This can be done by comparing color similarity in RGB (Red, Green, Blue), HSL (Hue, Saturation, Lightness) or HSV (Hue, Saturation, Brightness) mode. Select the conversion strategy that works best for your image. Ideally load a palette that matches all colors in the image. You can specify the bit depth of the image by changing the pixel mode. 1 Bit per Pixel results in 2 colors, 2 Bits per Pixel result in 4 colors, 4 Bits per Pixel result in 16 colors and 8 Bits per Pixel uses the whole palette of 256 colors. The colors usable by the image depend on the palette offset. Indexed: In indexed mode VGC assumes that all pixels in the image have the correct index. It is still necessary to select the correct palette offset to give a correct export. On export the palette offset is subtracted and the index value capped on the selected pixel mode. Transparency Any pixel in the image that has an alpha value of 255 is set to the index selected in "Transparent Color Index". The minimum value is the palette offset. Image Mode: The VERA Graphic chip has three modes. Bitmap, tiled with a tile dimension of 8 * 8 pixels and tiled with a tile dimension of 16 * 16 pixels. Both tile modes split the image in separate tiles and limit their number to 256, since the VERA chip cannot address more than 256 tiles. It is also possible to limit their number even further. To use a tile mode the width and height of your image must be divisible by 8 or 16. The VERA chips supports 4 different resolutions: 640x480, 320x480, 640x240 and 320x240. VGC does not enforce these resolutions. It is also possible to generate sprite maps. In sprite mode the tiles can have 8, 16, 32 or 64 pixels in width or height. They are however limited to 128 tiles, and similarly, the source images dimensions have to be divisible by the tile dimensions. Sprites can only have a color depth of 4 or 8 Bits per Pixel. PRG File Header It is possible to save the exported binary file with 2 leading bytes. This is necessary for some load routines in the Commander X16 Kernal. Splitting files The exported files can be saved in chunks of a given size. The VERA Video RAM is paged in pages of 2048 bytes. Files can be split at any page, depending on how you want to store or load your data. The PRG File Header is saved to every individual file. The Palette You can load and save the color palette in the Format used by the Gnu Image Manipulation Program (GIMP) Other software like Aseprite can read and save this format too. You can also export the palette in the format used by the VERA chip. The PRG Header option is applied to this as well. The file splitting is not. Analyzing the image. You can double click on colors in the palette to change them. When you hold the left mouse button on a color in the palette, the parts of the image using this color are highlighted. Similarly, when you click on the image the color in the palette is also highlighted.
    1 point
  47. Version 1.0.0


    What is double PETSCII? What is PETSCII you may ask first. PETSCII is the extended commodore text character set. This character set has been designed in such a way that it would enable simple graphics on the screen. Which would make it easy for would be programmers on the system, to make card games and so on. However easy to use, it is not easy to create very nice graphics with it.... But... This has changed somewhat. If you search for PETSCII art, you see people are trying to get cooler and cooler graphics out of PETSCII. Double Petscii is using the Commander 16's native graphics modes to overlay two layers of PETSCII graphics. This demo is an experiment in how that may be used. Tech info: -It was made with the cc65, in C. -The PETSCII mode used is lores text mode, with two layers. (40x30 chars) -All colors are standard colors. -1 Color is used as a color to be sacrificed for non black transparency, so there are 15 colors to work with, not 16. -Pictures drawn in hyperpetscii petscii online drawing program. https://hyperpyxel.com/?p=229
    1 point
  48. Version 0.4


    BASIC PREPROCESSOR allows one to create Commodore BASIC programs with a normal text editor without line numbers. Features: Much as strings begin and end with a quotation mark ("), macro constructs begin and end with a commercial at sign (@). This means that you cannot include @ in a macro, but otherwise any character may be used. A label can be defined on a line by itself as @+LABEL@. A label can be referenced after a GOTO or GOSUB as @-LABEL@ (including ON statements). A long variable name can be used as @!NAME@. A preprocessed comment can be used as @' whatever text you want @. These comments are not written to the PRG file. Any leading whitespace on a line is removed before writing the code to the PRG file. The preprocessor (probably) requires an emulator built from the master github branch. The program is written almost completely in BASIC. The one exception has to do with tokenization. Normally as you enter lines of BASIC the computer will translate them into a compressed tokenized form, and this is necessary for the programs to be usable. In order for BPP.PRG to create tokenized BASIC programs, it has a small machine language routine in golden RAM that converts from plain text to tokenized form. The tokenized form is written to the output PRG file. Here is a super simple example called SIMPLE.BPP. An animated GIF demonstrates the process of using the program.
    1 point
  49. Version 1.0.0


    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.
    1 point
  50. Version 0.9


    VTUI (Vera Text User Interface) library Can be used to create text user interfaces using VERA instead of relying on the KERNAL functions for writing to screen. The library is less than 1KB which means it can be loaded into Golden RAM at $400. As an alternative, include files are provided for Acme and CA65 assemblers. See https://github.com/JimmyDansbo/VTUIlib for documentation, examples and include files.
    1 point
  • Create New...

Important Information

Please review our Terms of Use