Log inRegister an accountBrowse CSDbHelp & documentationFacts & StatisticsThe forumsAvailable RSS-feeds on CSDbSupport CSDb Commodore 64 Scene Database
You are not logged in - nap
CSDb User Forums


Forums > C64 Productions > Richard's Interrupts
2002-05-06 03:13
Stryyker

Registered: Dec 2001
Posts: 468
Richard's Interrupts

I thought this would be a better place to discuss your problem :)

Following the program makes no sense to me.

To end interrupts, you can JMP to a number of Kernal addresses, keyboard/withough keybaord scanning etc.

An alternative is RTI (ReTurn from Interrupt). This needs a little work if you use interrupt via $0314/$0315. You will need to PLA, TAX, PLA, TAY, PLA, RTI (maybe swap TAX with TAY as my memory fails me).

Most of the JMP $EA81 will not work as you branch before it is executed. You can do some embedding of interrupts within the current one but you will lose the purpose of what you want (double raster interrupt for stable rasters is a simple example).

I don't fully understand what you are trying to achieve and how but maybe somethink like:

INT1
lda #$00
sta $d020
sta $d021
lda #$7c
ldx #<INT2
ldy #>INT2
jmp FINint

INT2
lda #$06
sta $D020
sta $D021
jsr $1003
lda #$30
ldx #<INT1
ldy #>INT1
jmp FINint

FINint
sta $D012
stx $0314
sty $0315
lda #$01
sta $D019
jmp $EA81

It's only a guess but your bit in the question was a bit messy :)
 
... 10 posts hidden. Click here to view all posts....
 
2002-05-10 14:52
chatGPZ

Registered: Dec 2001
Posts: 11360
raster interupt w/o kernal.... from the top of my head (someone else fix the bugs ;=P)

sei
lda #$35
sta $01
lda #>irq
sta $ffff
lda #<irq
sta $fffe
lda #$01
sta $d01a
lda #$7f
sta $dc0d
lda #$30
sta $d012
lda #$1b
sta $d011
lda $dc0d
ror $d019
cli
jmp *

irq:
stx sx+1
sty sy+1
sta sa+1
; do stuff
sx: ldx #$00
sy: ldy #$00
sa: lda #$00
ror $d019
rti
2002-05-10 23:51
Stryyker

Registered: Dec 2001
Posts: 468
I use lda #$01, sta $d019 but I work to make most of my stuff to work with SCPU. I think it changes the 2 writes for the read-modify-write commands.
2002-05-28 07:47
Dosoo
Account closed

Registered: Apr 2002
Posts: 32
It just came to my mind, that a listing of a working raster interrupt with the kernal disabled was published with my Amebas graphic editor. The display.source works with raster interrupt. The code should be standard Turbo Assembler code.
2002-06-16 20:57
Richard

Registered: Dec 2001
Posts: 621
T.M.R: Thanks, the routines helped me a lot, and I have learned these routines and I am able to use these without a problem :)

Muchly appreciated
2004-08-25 10:25
Richard

Registered: Dec 2001
Posts: 621
.... I've just learned today how to save raster time for scrolling. All I need to try now is double-buffering :)

Regarding TMR's example. I tried to do those splits in my own accord, but unfortunately the splits would not work. I only realised what the problem was - I missed the $D011 routine before assembling.
Previous - 1 | 2 - Next
RefreshSubscribe to this thread:

You need to be logged in to post in the forum.

Search the forum:
Search   for   in  
All times are CET.
Search CSDb
Advanced
Users Online
Higgie/Kraze/Slackers
JackAsser/Booze Design
Yogibear/Protovision
Exploding Fi../Techn..
E$G/HF ⭐ 7
Guests online: 100
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Mojo  (9.6)
6 The Demo Coder  (9.6)
7 What Is The Matrix 2  (9.6)
8 Uncensored  (9.6)
9 Wonderland XIV  (9.6)
10 Comaland 100%  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 Party Elk 2  (9.6)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.6)
5 Libertongo  (9.5)
6 Rainbow Connection  (9.5)
7 Onscreen 5k  (9.5)
8 Morph  (9.5)
9 Dawnfall V1.1  (9.5)
10 It's More Fun to Com..  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Nostalgia  (9.3)
5 Triad  (9.2)
Top Musicians
1 Rob Hubbard  (9.7)
2 Jeroen Tel  (9.7)
3 Mutetus  (9.7)
4 Jammer  (9.6)
5 Linus  (9.6)

Home - Disclaimer
Copyright © No Name 2001-2024
Page generated in: 0.062 sec.