Jump to content

Search the Community

Showing results for tags 'graphics'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Commander X16 Forums
    • Introductions
    • X16 Discussion Lounge
    • X16 Help & Support Lounge
    • Off-topic Lounge

Categories

  • Official Software
  • Official Docs
  • Community Downloads
    • Games
    • Productivity Apps
    • Graphics Apps
    • Audio Apps
    • Demos
    • Networking Apps
    • Dev Tools
    • Tutorial Apps
    • Misc Apps

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

  1. Version 1.0.0

    15 downloads

    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.
  2. X16PngConverter - convert png images to sprites, tiles or bitmap images View File 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. 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 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. Submitter Johan Kårlin Submitted 12/01/21 Category Dev Tools  
  3. Version 1.0.1

    6 downloads

    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. CELESTEMAP.PRG View File 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)). Submitter CX16UserSteveC Submitted 11/05/21 Category Demos  
  5. Version 1.0.0

    20 downloads

    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
  6. I thought this might come in handy for people using the Adobe software family when designing graphics for old ChickenLips. It's an Adobe Colour Table (.ACT) file containing the default 256 colour palette. I found it useful when designing tiles in Photoshop. Let me know if there are any errors in it! Have fun. cx16.ACT
  7. LORES DOUBLE PETSCII DEMO View File 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 Submitter CursorKeys Submitted 04/05/21 Category Demos  
  8. Parallax Demo View File This is an early concept based upon the ideas and code shown here https://www.8bitcoding.com/p/tiles-in-assembly-ii-line-interrupt-for.html ============================================================ The PARA.PRG is my first attempt recreating the psudo parallax seen in games from the 16bit and 8 bit era. This is all on the same layer the same as in the above mentioned blog. The difference here was to make the background reactive to the foreground movement. Although this is hardcoded to move 1 pixel per frame forward all the slower sections are all based on how fast the foreground is moving. I'm hoping to expand upon this to also support vertical perspective tricks. ============================================================ Instructions: copy the PARA.PRG file to your emulator location or run the x16emu from the files location. run x16emu and type the following commands LOAD"PARA.PRG" RUN Submitter Cunnah Submitted 03/07/21 Category Demos  
  9. Cunnah

    Parallax Demo

    Version 1.0.0

    29 downloads

    This is an early concept based upon the ideas and code shown here https://www.8bitcoding.com/p/tiles-in-assembly-ii-line-interrupt-for.html ============================================================ The PARA.PRG is my first attempt recreating the psudo parallax seen in games from the 16bit and 8 bit era. This is all on the same layer the same as in the above mentioned blog. The difference here was to make the background reactive to the foreground movement. Although this is hardcoded to move 1 pixel per frame forward all the slower sections are all based on how fast the foreground is moving. I'm hoping to expand upon this to also support vertical perspective tricks. ============================================================ Instructions: copy the PARA.PRG file to your emulator location or run the x16emu from the files location. run x16emu and type the following commands LOAD"PARA.PRG" RUN
  10. Chonky Text in 6502 Assembly View File A little demo of rendering giant text in assembly. It takes the data from the Lower/Upper character set in ROM and renders it in a large, "LCD-style" font. You can use .asciiz in CC65 for letters, or use a zero-terminated array of bytes to reference the character codes, as below (thanks to https://www.commanderx16.com/forum/index.php?/profile/5-jimmydansbo/ for the character set reference). Submitter gavinhaslehurst Submitted 03/03/21 Category Demos  
  11. Version 0.8

    120 downloads

    A little demo of rendering giant text in assembly. It takes the data from the Lower/Upper character set in ROM and renders it in a large, "LCD-style" font. You can use .asciiz in CC65 for letters, or use a zero-terminated array of bytes to reference the character codes, as below (thanks to https://www.commanderx16.com/forum/index.php?/profile/5-jimmydansbo/ for the character set reference).
  12. Version 0.0.3

    127 downloads

    I have been playing with the VERA chip in assembly, and have come up with a cheeky little demo screen that is reminiscent of some 80s demos I can remember as a kid. No music or fancy interactive stuff, but some of you might find it amusing. Warning: As a GP I feel I ought to point out this demo contains flashing / strobing effects! Thanks to the excellent tutorials of SlithyMatt - Commander X16™ Community, especially the latest one demystifying the VERA chip. I have used a lot of his code from the latest tutorial to create this demo.
  13. VERA Demo Screen written in assembly View File I have been playing with the VERA chip in assembly, and have come up with a cheeky little demo screen that is reminiscent of some 80s demos I can remember as a kid. No music or fancy interactive stuff, but some of you might find it amusing. Warning: As a GP I feel I ought to point out this demo contains flashing / strobing effects! Thanks to the excellent tutorials of SlithyMatt - Commander X16™ Community, especially the latest one demystifying the VERA chip. I have used a lot of his code from the latest tutorial to create this demo. Submitter gavinhaslehurst Submitted 02/24/21 Category Demos  
  14. Version 1.0.1

    98 downloads

    This demo program provides an overview of what the vera card can do in terms of the different configurations in text mode, tile mode, and bitmap modes. The demo is nothing really fancy, but the workhorse underneath is the new API library (veralib.c and veralib.h, conio-cx16.c etc. ) that allows to configure and control the vera card of the CX16 using the kickc compiler of Jesper Gravgaard: camelot / kickc · GitLab. The veralib library and source code of this demo program has become an integral part of the compiler and test programs, and can be downloaded also from src/test/kc/examples/cx16/cx16-vera.c · CX16_VERA · Sven Van de Velde / kickc · GitLab. If you're a C-programmer, and you're interested in using this library, please beware that this is still work in progress. However, if you're motivated to try it out, i'm really interested to get feedback on this c-library to understand if the API is useful and clear. Feel free to try out the program, by running it in an emulator in windows; the mobile phone emulators won't be able to run this program properly because the keyboard is needed to run this. More features are planned to be added. One of the features planned is to provide mouse support, so it can be run using the android emulators too. kind regards, Sven
  15. Version 0.0.4

    134 downloads

    This is a quick demo of a 2D graphics library I've been working on recently. It's written in assembler, and aims to make life a bit easier when it comes to drawing vector graphics. You can define individual polygons which can be moved about and rotated. The source code looks fairly daunting, but when it comes down to it, building, transforming and rendering the polygons is very straightforward. Hopefully this will form the basis of a game at some point soon. (Perhaps an Asteroids clone?) Once I sink my teeth into interrupt handling, I should be able to "vsync" everything so it's flicker-free. All comments and suggestions welcome! Short screen capture of this demo on YouTube (featuring my tunez!!): Commander X16 Demo - Vector Graphics in 6502 Assembly - YouTube WARNING: For those who are sensitive to flickering/strobing, please be aware that this may cause problems for you. -- See below for a quick preview of the game I'm working on, retro flickering and all!
  16. Assembly Vector Graphics Demo View File This is a quick demo of a 2D graphics library I've been working on recently. It's written in assembler, and aims to make life a bit easier when it comes to drawing vector graphics. You can define individual polygons which can be moved about and rotated. The source code looks fairly daunting, but when it comes down to it, building, transforming and rendering the polygons is very straightforward. Hopefully this will form the basis of a game at some point soon. (Perhaps an Asteroids clone?) Once I sink my teeth into interrupt handling, I should be able to "vsync" everything so it's flicker-free. All comments and suggestions welcome! Short screen capture of this demo on YouTube (featuring my tunez!!): Commander X16 Demo - Vector Graphics in 6502 Assembly - YouTube WARNING: For those who are sensitive to flickering/strobing, please be aware that this may cause problems for you. -- See below for a quick preview of the game I'm working on, retro flickering and all! Submitter gavinhaslehurst Submitted 02/03/21 Category Demos  
  17. Hi All, I’m considering how to include a simple particle system in an X16 game - eg for explosions, with each particle being a single pixel. I can’t find any examples of how to do this (assembly). Does anyone have any suggestions or links? Many thanks T
  18. Version 0.6

    539 downloads

    Here is the Mandelbrot version of my Julia Set program, coded in assembly. Again, many thanks to the forum users here for their guidance, as well as the many YouTubers with their excellent tutorials on 6502 assembly language. It's a lot faster than the BASIC version, but nevertheless, benefits from being run in warp mode. Now in colour, with thanks to: VERA Overview (8bitcoding.com) NEW VERSION NOW WITH MOUSE CONTROLS! When the image has finished rendering, click the left mouse on the area of the screen you wish to zoom in to. To change the detail settings (cycle between Low, Med, High) click the right mouse button. Poke around in the old version... Try copying and pasting the following groups of POKEs to explore further (not all at once, just each paragraph in turn!): POKE $D6B,$19:POKE $D6A,$64:REM FX=6500 POKE $D6D,$13:POKE $D6C,$54:REM FY=4948 POKE $D6E,$00:POKE $D6F,$FF:REM FX=POS,FY=NEG POKE $D7B,$00:POKE $D7A,$01:REM STEP=1 POKE $D7C,$FF:REM ITERATIONS=255 SYS2061 POKE $D6B,$0F:POKE $D6A,$A0:REM FX=4000 POKE $D6D,$00:POKE $D6C,$00:REM FY=0 POKE $D6E,$FF:POKE $D6F,$FF:REM FX=NEG,FY=NEG POKE $D7B,$01:POKE $D7A,$F4:REM STEP=500 POKE $D7C,$FF:REM ITERATIONS=255 SYS2061 POKE $D6B,$0F:POKE $D6A,$878:REM FX=3960 POKE $D6D,$03:POKE $D6C,$E8:REM FY=1000 POKE $D6E,$FF:POKE $D6F,$FF:REM FX=NEG,FY=NEG POKE $D7B,$00:POKE $D7A,$32:REM STEP=50 POKE $D7C,$FF:REM ITERATIONS=255 SYS2061 To use the POKES above in the web emulator, first click the X in the top right corner of the web emulator. Paste the POKES above that you want to use in to the text field to the left, replacing what's already in there, then click the Run button. Individual addresses that can be poked: $D6A 30 75 .word 30000 ; FX $D6C A8 61 .word 25000 ; FY $D6E FF .byte $ff ; FX SIGN ff = negative $D6F FF .byte $ff ; FY SIGN ff = negative $D7A A8 61 .word 25000 ; STEP (lower=higher zoom) $D7C 10 .byte $10 ; ITERATIONS Old poke codes for the colour PETSCII version: step: POKE $0D3D e.g. 50 for a step of 0.05 (smaller number, higher zoom) iterations: POKE $0D3F e.g. 30 iterations about right, higher = slower start x: POKE $0D2F, normally 8 (for -0.8) - nicely centred at low zoom start y: POKE $0D31, normally 12 (for -1.2) - again centred at low zoom Old poke codes for the PETSCII version: step: POKE $0cff e.g. 50 for a step of 0.05 (smaller number, higher zoom) iterations: POKE $0d01 e.g. 30 iterations about right, higher = slower start x: POKE $0cf1, normally 8 (for -0.8) - nicely centred at low zoom start y: POKE $0cf3, normally 12 (for -1.2) - again centred at low zoom You Tube video of this in action: Commander X16 - 6502 assembly demo - Mandelbrot set - YouTube Commander X16 - Fractal Zoom Demo - 6502 Assembly - YouTube
  19. Vera Modes - Demo View File This demo program provides an overview of what the vera card can do in terms of the different configurations in text mode, tile mode, and bitmap modes. The demo is nothing really fancy, but the workhorse underneath is the new API library (veralib.c and veralib.h, conio-cx16.c etc. ) that allows to configure and control the vera card of the CX16 using the kickc compiler of Jesper Gravgaard: camelot / kickc · GitLab. The veralib library and source code of this demo program has become an integral part of the compiler and test programs, and can be downloaded also from src/test/kc/examples/cx16/cx16-vera.c · CX16_VERA · Sven Van de Velde / kickc · GitLab. If you're a C-programmer, and you're interested in using this library, please beware that this is still work in progress. However, if you're motivated to try it out, i'm really interested to get feedback on this c-library to understand if the API is useful and clear. Feel free to try out the program, by running it in an emulator in windows; the mobile phone emulators won't be able to run this program properly because the keyboard is needed to run this. More features are planned to be added. One of the features planned is to provide mouse support, so it can be run using the android emulators too. kind regards, Sven Submitter svenvandevelde Submitted 01/23/21 Category Graphics Apps  
  20. Mandelbrot Assembly Demo View File Here is the Mandelbrot version of my Julia Set program, coded in assembly. Again, many thanks to the forum users here for their guidance, as well as the many YouTubers with their excellent tutorials on 6502 assembly language. It's a lot faster than the BASIC version, but nevertheless, benefits from being run in warp mode. Now in colour, with thanks to: VERA Overview (8bitcoding.com) NEW VERSION NOW WITH MOUSE CONTROLS! When the image has finished rendering, click the left mouse on the area of the screen you wish to zoom in to. To change the detail settings (cycle between Low, Med, High) click the right mouse button. Poke around in the old version... Try copying and pasting the following groups of POKEs to explore further (not all at once, just each paragraph in turn!): POKE $D6B,$19:POKE $D6A,$64:REM FX=6500 POKE $D6D,$13:POKE $D6C,$54:REM FY=4948 POKE $D6E,$00:POKE $D6F,$FF:REM FX=POS,FY=NEG POKE $D7B,$00:POKE $D7A,$01:REM STEP=1 POKE $D7C,$FF:REM ITERATIONS=255 SYS2061 POKE $D6B,$0F:POKE $D6A,$A0:REM FX=4000 POKE $D6D,$00:POKE $D6C,$00:REM FY=0 POKE $D6E,$FF:POKE $D6F,$FF:REM FX=NEG,FY=NEG POKE $D7B,$01:POKE $D7A,$F4:REM STEP=500 POKE $D7C,$FF:REM ITERATIONS=255 SYS2061 POKE $D6B,$0F:POKE $D6A,$878:REM FX=3960 POKE $D6D,$03:POKE $D6C,$E8:REM FY=1000 POKE $D6E,$FF:POKE $D6F,$FF:REM FX=NEG,FY=NEG POKE $D7B,$00:POKE $D7A,$32:REM STEP=50 POKE $D7C,$FF:REM ITERATIONS=255 SYS2061 To use the POKES above in the web emulator, first click the X in the top right corner of the web emulator. Paste the POKES above that you want to use in to the text field to the left, replacing what's already in there, then click the Run button. Individual addresses that can be poked: $D6A 30 75 .word 30000 ; FX $D6C A8 61 .word 25000 ; FY $D6E FF .byte $ff ; FX SIGN ff = negative $D6F FF .byte $ff ; FY SIGN ff = negative $D7A A8 61 .word 25000 ; STEP (lower=higher zoom) $D7C 10 .byte $10 ; ITERATIONS Old poke codes for the colour PETSCII version: step: POKE $0D3D e.g. 50 for a step of 0.05 (smaller number, higher zoom) iterations: POKE $0D3F e.g. 30 iterations about right, higher = slower start x: POKE $0D2F, normally 8 (for -0.8) - nicely centred at low zoom start y: POKE $0D31, normally 12 (for -1.2) - again centred at low zoom Old poke codes for the PETSCII version: step: POKE $0cff e.g. 50 for a step of 0.05 (smaller number, higher zoom) iterations: POKE $0d01 e.g. 30 iterations about right, higher = slower start x: POKE $0cf1, normally 8 (for -0.8) - nicely centred at low zoom start y: POKE $0cf3, normally 12 (for -1.2) - again centred at low zoom You Tube video of this in action: Commander X16 - 6502 assembly demo - Mandelbrot set - YouTube Commander X16 - Fractal Zoom Demo - 6502 Assembly - YouTube Submitter gavinhaslehurst Submitted 01/17/21 Category Demos  
  21. Version 0.0.1

    42 downloads

    Here is my work in progress Julia Set demo! I wrote this in BASIC a couple of weeks ago when starting out on the Commander X16 journey. Since then, I have been trying to learn 6502 assembler. This is the result so far! After wrestling with floating point arithmetic (see my other posts!) I have finally managed to get something working. At the moment, the output is PETSCII, but all being well there will be a graphical version of this in the pipeline. Feel free to muck about with the code. It's probably not written very well, but I have only been doing this for a couple of weeks (and despite being badly written, it's much faster than the BASIC version!) Many thanks to all the experienced forum users who commented on my previous posts to help guide me through this process, as well as the many YouTubers who posted tutorials about how to program the 6502. Watch this space for updates! Some things you can poke around in to change the parameters: POKE $0D30, X -- change the REAL component (this is passed as an integer but can be divided by ten a number of times to achieve smaller numbers - see below) POKE $0D36, X -- the number of times to divide the REAL component by 10 (in order to get around the lack of FIN in the Kernal at present) POKE $0D34, $00 -- make the REAL component positive POKE $0D34, $FF -- make the REAL component negative POKE $0D32, X -- change the IMAG component (this is passed as an integer but can be divided by ten a number of times to achieve smaller numbers - see below) POKE $0D37, X -- the number of times to divide the IMAG component by 10 (in order to get around the lack of FIN in the Kernal at present) POKE $0D35, $00 -- make the IMAG component positive POKE $0D35, $FF -- make the IMAG component negative
  22. Julia Set Assembly Demo View File Here is my work in progress Julia Set demo! I wrote this in BASIC a couple of weeks ago when starting out on the Commander X16 journey. Since then, I have been trying to learn 6502 assembler. This is the result so far! After wrestling with floating point arithmetic (see my other posts!) I have finally managed to get something working. At the moment, the output is PETSCII, but all being well there will be a graphical version of this in the pipeline. Feel free to muck about with the code. It's probably not written very well, but I have only been doing this for a couple of weeks (and despite being badly written, it's much faster than the BASIC version!) Many thanks to all the experienced forum users who commented on my previous posts to help guide me through this process, as well as the many YouTubers who posted tutorials about how to program the 6502. Watch this space for updates! Some things you can poke around in to change the parameters: POKE $0D30, X -- change the REAL component (this is passed as an integer but can be divided by ten a number of times to achieve smaller numbers - see below) POKE $0D36, X -- the number of times to divide the REAL component by 10 (in order to get around the lack of FIN in the Kernal at present) POKE $0D34, $00 -- make the REAL component positive POKE $0D34, $FF -- make the REAL component negative POKE $0D32, X -- change the IMAG component (this is passed as an integer but can be divided by ten a number of times to achieve smaller numbers - see below) POKE $0D37, X -- the number of times to divide the IMAG component by 10 (in order to get around the lack of FIN in the Kernal at present) POKE $0D35, $00 -- make the IMAG component positive POKE $0D35, $FF -- make the IMAG component negative Submitter gavinhaslehurst Submitted 01/17/21 Category Demos  
  23. Julia Set Demo View File This is a quick and dirty Julia set demo written in Commander X16 BASIC. It generates a random Julia set each time it is run. I strongly suggest using the emulator's -warp option to speed things up a bit! Enjoy the fractal action! Submitter gavinhaslehurst Submitted 01/07/21 Category Demos  
  24. Version 0.0.1

    21 downloads

    This is a quick and dirty Julia set demo written in Commander X16 BASIC. It generates a random Julia set each time it is run. I strongly suggest using the emulator's -warp option to speed things up a bit! Enjoy the fractal action!
  25. Version 0.0.2

    54 downloads

    This is a quick and dirty Mandelbrot set demo written in Commander X16 BASIC. I strongly suggest using the emulator's -warp option to speed things up a bit! I plan to make this a bit more user friendly, and include more options for zooming, changing colours etc. But for now, enjoy the fractal action!
×
×
  • Create New...

Important Information

Please review our Terms of Use