Questions tagged [c64]

The Commodore 64, commonly called C64, C=64 (after the graphic logo on the case) or occasionally CBM 64 (for Commodore Business Machines), or VIC-64, was an 8-bit home computer introduced in January 1982 by Commodore International.

The Commodore 64, commonly called "C64," "C=64" (after the graphic logo on the case), "VIC-64," or occasionally CBM 64 (for Commodore Business Machines), is an 8-bit home computer, introduced in January 1982 by Commodore International.

The C64 uses an 8-bit MOS Technology 6510 microprocessor, has 64 kB of RAM, features a VIC-II graphic chip with 16 colors and a SID sound chip.

During the C64's lifetime, sales totalled between 12.5 and 17 million units, making it the best-selling single personal computer model of all time.

Approximately 10,000 commercial software titles were made for the Commodore 64, including development tools, office productivity applications and games.

88 questions
3
votes
1 answer

Who's calling my interrupt handler if I have both CIAs turned off?

I'm trying to set up a simple raster interrupt handler to change the background color in a given stripe. However, my interrupt handler seems to be called all the time. (the code uses CA65's format) .include "c64.inc" ROW = 100 .segment…
Cactus
  • 27,075
  • 9
  • 69
  • 149
3
votes
2 answers

CA65: 'Range error' from 16-bit computed address

Given the following CA65 code: foo = $82 .scope LDA #$ff STA foo*$40 .endscope I get this error message: foo.s(5): Error: Range error (8320 not in [0..255]) Interestingly, the following version works as expected: foo = $82 …
Cactus
  • 27,075
  • 9
  • 69
  • 149
3
votes
0 answers

Commodore 64 programmers, How To Use ReSid In C++ Game?

Would it be possible to use the ReSID emulation source code in a game I'm making? I want a video game sound engine like the good old days. Not wavs/mp3s. Any thoughts? http://en.wikipedia.org/wiki/ReSID
adabo
  • 87
  • 7
2
votes
1 answer

Interrupt that loads Bitmap and plays a SID file is NOT returning to main program - (6510 ASM, CBM Prog Studio)

I have been trying to load a bitmap to the screen and play a sid file at the same time using an IRQ interrupt. I have it working, the Bitmap displays great, and the SID file plays wonderfully, but that's it. I want to be able to move on to the next…
2
votes
1 answer

Simple way to *wait* for a key press, and get its martrix or PETSCII code?

I have found a few BASIC and KERNAL functions and memory addresses related to getting a key press/line, but how can I simply wait for a key press, and get its code? I want to pause execution, and resume once a key is pressed. I do not want them to…
circl
  • 121
  • 8
2
votes
2 answers

C64 assembly store memory address and increase it

I learn now KickAss assembler for C64, but i'm never learnd any asm or 8 bit computing before. I want to print big ascii banner (numbers). I want to store the "$0400" address in the memory and when i'm increased the line number i need to increase it…
esemve
  • 360
  • 2
  • 10
2
votes
1 answer

PET CBM C64 MOS6510 Assembly Print out letter on screen with calculated screen address?

I'm new to assembler programming for the C64 and I have a question about the procedure for saving and loading memory areas. I am concerned with the following: lda #$01 sta $0400 Puts the letter A to the top left on the screen ldx #$00 lda #$01 sta…
DiscMix
  • 31
  • 2
2
votes
1 answer

What dialect of C64 6502 assembly is this?

What dialect of 6502 Assembly is this and how do I compile it without translating it into a different 6502 dialect? *=$0900 jmp Start SCRN_START=$0400 Print=$ffd2 Basin=$ffcf incasm "Character_ASCII_Const.asm" defm PrintText ldy #>/1 …
Rob O'Doherty
  • 549
  • 3
  • 14
2
votes
2 answers

DSP-type effects in realtime on the C64: How is it possible?

I just saw this, and it is one of the most amazing things I've ever seen: http://www.youtube.com/watch?v=MDrqBYkco-Y I am not even able to fathom this. What is going on here?
justinb
  • 31
  • 1
2
votes
1 answer

AI movement 100% like in the Game MAFIA on the C64

Update Link to the C# Solution Project from a user who answered me: https://github.com/TedDawkin/C64_AI_Movement Update I found it - if someone is interested just use the link to the thread in C64 Forum:…
2
votes
2 answers

Automatic padding to assemble certain instructions into predetermined addresses

I'd like to use CA65 to assemble a 6502 ROM that needs to run on its own, i.e. no other kernal available. I would like my program to start at $C000. But this means I'll also need to put $00 $C0 into the reset vector at $FFFC. Is there a way to have…
Cactus
  • 27,075
  • 9
  • 69
  • 149
2
votes
1 answer

Alternative to sinus function for sprite movement

Working on some C64 intro ideas. I move sprites based on pre-generated sinus tables using below code and a sinus table. subroutine ldx counter cmx #100 jmp + ldx #00 stx counter + lda sprite_sinus,x …
wizofwor
  • 917
  • 8
  • 25
1
vote
0 answers

Interfacing with the Commodore 64 Serial Port using Assembly

I'm struggling a bit to find relevant documentation on this subject when it comes to using just assembly. All I've found is either irrelevant or for BASIC. My goal is to be able to send and receive strings from the C64 serial port, but I cannot find…
SkyeG06
  • 15
  • 3
1
vote
0 answers

Is it possible to steer the fischertechnik C64 robot interface via a modern USB port?

I still have the fischertechnik computing interface 30566. Is it possible to steer this interface via a modern USB port (instead of the C64 userport)? I know there are adapters for turning USB into 5V TTL. Or do I need to have RS-232 in between? And…
Bernd
  • 11
  • 3
1
vote
3 answers

How to enter commands programmatically in c64's basic?

I want to write a very simple basic program in commodore 64 that enters other basic commands. Here's an example: 10 print"list"+chr$(13) This prints list but doesn't hit enter. My expectation is that I get the result of the list command. How can I…
Pitto
  • 8,229
  • 3
  • 42
  • 51