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 Coding > 100% versions..? Party versions..? etc..?
2018-11-19 22:21
Raistlin

Registered: Mar 2007
Posts: 680
100% versions..? Party versions..? etc..?

So, I was wondering ...

Both "Delirious 11" and "X Marks the Spot" have the RESTORE key crash... and "X Marks" has a last minute glitch that crept in...

For myself I'd love to release a 100% version ... but I also kinda wouldn't - because doing so "dirties" the CSDB releases somewhat ... there'd then be something like an "X Marks Party Version" and "X Marks 100% Version" sullying the charts ........

I know Comaland had a 100% version, I can see it right now sat nicely at #2 in the charts ... but that version has more changed since the party version than what I'd likely do...

What do others think? Leave the demos alone and move on .. or go back and fix them.
 
... 48 posts hidden. Click here to view all posts....
 
2018-11-20 22:14
Krill

Registered: Apr 2002
Posts: 2980
Quoting soci
Not quite as much. It's 8 to 10.
Not so rhetorical a question then, eh? :)

Anyways, yes, point taken. So 21 interrupt handlers with the two-timers setup in the worst case. And well, the extra interrupt handlers only reachable by hitting restore would just be an RTI each, anyways.

However... all 8-cycle instructions are undocs, and thus the maximum interrupt delay for "legal" code would be 9 cycles, which fits neatly with the 9-7 scheme.
2018-11-20 22:36
Raistlin

Registered: Mar 2007
Posts: 680
Thanks everyone :-)

I'll have a think about this... I've never played much with the CIA timers to be honest... and I've no idea whether that's allowed when using Spindle? I'll see...
2018-11-20 22:40
Krill

Registered: Apr 2002
Posts: 2980
Perfectly fine with other loaders that have optional frameworks. :)

Be aware of different CIA revisions vs. different interrupt delay, though.
2018-11-20 23:14
soci

Registered: Sep 2003
Posts: 480
Still the 7 cycle modify absolute indexed instructions (like LSR $1000,x) need to be avoided as jump targets. The 9*7 scheme can compensate up to 8 cycles only.

But this special case shouldn't be too difficult to avoid in practice.
2018-11-20 23:21
hedning

Registered: Mar 2009
Posts: 4732
Just ignore the restore-thing, Raistlin. It’s no flaw. What I said at X was ”don’t tell Burglar not to press Restore, as that might trigger him to actually press it” ;) If people feel a need to press restore during the demo, let them have the reward they deserve.
2018-11-20 23:26
Copyfault

Registered: Dec 2001
Posts: 478
Quoting soci
I think I must ask the following rhetoric question:

What's the worst case interrupt latency of the following code sequences in cycles?
1.
clc
bcc *+2
rts

2.
ldx #1
bne *+2
lsr $1000,x

3. 
ldx #1
bne *+2
isb ($10,x)

No page boundary crossing.
The relevant question is: what range of interupt latency are we dealing with? I.e., how many different states do we have upon entering the irq?

IIRC, when I examined this long ago, I found this (going through the examples above):
for 1. min latency of +1 (irq happens on 1st cycle of "clc"), max latency of +7 (irq occurs on 2nd cycle of bne)
-> 7 different states

for 2. min latency of +1, max latency of +8
-> 8 different states

for 3. min latency of +1, max latency of +9
-> 9 different states
Thus, the 9*7-method presented by Krill should work on any "legal code usage"-occasion. Unless you want to cover the difference between old and new cia by treating it as an additional latency cycle (which would raise the no. of states given above by one in every case).

Correct me if I'm wrong, but I'm rather sure that the behaviour was like this...
2018-11-20 23:53
Krill

Registered: Apr 2002
Posts: 2980
If i read Cycles to get into IRQ routine correctly, there are 9 different timer values (8 cycles jitter) for "legal" instructions in the branch-to-same-page case.

11 different values would be the maximum: add one for "illegals" and another one for raster IRQ on line 0, which doesn't apply here.
2018-11-21 00:08
soci

Registered: Sep 2003
Posts: 480
I was wrong, sorry.

Copyfault is right, the taken branch is only adding a single cycle and therefore 9 interrupts will covers all cases, including illegal opcodes.

More testing and less talking for me next time ;)
2018-11-21 09:29
ChristopherJam

Registered: Aug 2004
Posts: 1409
So, back to the original topic - are 101% versions released during or shortly after party "outside compo" releases? Or not associated with party?
2018-11-21 10:26
hedning

Registered: Mar 2009
Posts: 4732
Quote: So, back to the original topic - are 101% versions released during or shortly after party "outside compo" releases? Or not associated with party?

They are not related to the compo at all, as they weren't released during the compo, nor competing in it. :)
Previous - 1 | 2 | 3 | 4 | 5 | 6 - 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
DivertigO
Chesoner/House Designs
Martin Piper
Freeze/Blazon
Mike
The MeatBall
Perplex/Offence
Airwolf/F4CG
Walt/Bonzai
FRaNKy/Smash Designs
Thierry
Steffan/BOOM!
Bansai/BSILabs
iAN CooG/HVSC
Guests online: 117
Top Demos
1 Next Level  (9.7)
2 13:37  (9.7)
3 Mojo  (9.7)
4 Coma Light 13  (9.6)
5 Edge of Disgrace  (9.6)
6 What Is The Matrix 2  (9.6)
7 The Demo Coder  (9.6)
8 Uncensored  (9.6)
9 Comaland 100%  (9.6)
10 Wonderland XIV  (9.6)
Top onefile Demos
1 Layers  (9.6)
2 No Listen  (9.6)
3 Cubic Dream  (9.6)
4 Party Elk 2  (9.6)
5 Copper Booze  (9.6)
6 Dawnfall V1.1  (9.5)
7 Rainbow Connection  (9.5)
8 Onscreen 5k  (9.5)
9 Morph  (9.5)
10 Libertongo  (9.5)
Top Groups
1 Performers  (9.3)
2 Booze Design  (9.3)
3 Oxyron  (9.3)
4 Triad  (9.3)
5 Censor Design  (9.3)
Top Original Suppliers
1 Derbyshire Ram  (9.7)
2 Fungus  (9.3)
3 Black Beard  (9.2)
4 Baracuda  (9.2)
5 hedning  (9.1)

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