Programmermind

C64 Studio

This page is a tutorial and testimonial to the C64 Studio Editor written by Georg Rottensteiner between 2011-2013. The editor allows a user to emulate a true C64 environment for Assembly language development. It also has the ability to load and run VICE C64 within it’s own virtual window. This reduces a lot of time trying to run a program directly in VICE C64.
It has many uses and several tools. The editor allows you to create and save projects, Search text in the editor, and setup debug configurations. It also contains a built in Sprite Editor, Character Set Editor, and has a built in Calculator (useful for Decimal, Hex, and Binary conversions). There is even a PETSCII character set display chart.
I won’t expound upon the many other things you can do with this editor until further notice. However it seems to be equipped with enough options to satisfy any Commodore 64 Assembly Language developer.
For those Microsoft toolbar enthusiasts, the editor also h as a built in toolbar. You can create a new project, save your project (I use this a lot), compile the project, build the project, and use the Debug editor. When you have VICE C64 running you can also control it within the editor and stop a running program. This thing is amazing!
To setup a new project click on File, New, Project or you can use the toolbar icon on the far top left. The New Project Wizard appears. Enter in a Project Name and select the directory where you want the project stored at. It also displays the project location for you. Then click on the OK button.
After you have a project created you will next need to create a file to store your Assembly language project within. Click on File, New, ASM File. You can also create Basic File, Sprite Set, Character Set, Graphic Screen Editor, and Character Screen Editor. All we are interested in for now is getting your first program on the screen.
We are going to write a simple program that changes the screen colors. Please note that this page will not teach you everything you want to know about Assembly language as that will be reserved for another section. I would highly suggest finding a good beginner’s guide to 6502 Assembly language for the Commodore 64. I would personally suggest the book Machine Language for Beginners by Richard Mansfield. There is a lot of helpful information to help you understand at least the basics for now.
Type in the example code into the editor. The asterisk indicates the memory where you will load your program into. Since we are not using 32768 this is a good starting place. Normally this area is reserved for the Autostart ROM cartridge, but it is can safely be used for assembly language development.
The !BYTE declarations are necessary to provide a safe place to autoboot VICE C64. According to Mapping the Commodore 64 & 64C the statement JSR $FF5b is used to initialize a Screen Editor and the VIC-Chip. This editor takes advantage of this as if you were trying to boot a game or program from a cartridge.
First we used lda #2 to store a 2 into the accumulator (think of it as a storage place for numbers). Then we use sta Extcol. The second part of this statement references the earlier label we have at the top of the screen. It is a way to manage variables in your program. Finally we end with an rts to escape back into VICE C64.
In order to enable each Assembly language program to run with VICE C64 you will need to add !to “studioscroll.crt”,CART16CR.
Below is a screenshot of C64 Studio Editor running the program we created within VICE C64. Thanks for stopping by.

Leave a Comment

Your email address will not be published. Required fields are marked *