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 11:28
ChristopherJam

Registered: Aug 2004
Posts: 1409
While we're talking about post compo patches...

Slightly improved versions released after voting closes, but before results released, for an online compo... Out of compo but still at event? Or standalone release?

(obviously I have Reutastic 100% in mind as a case in point)
2018-11-20 12:28
MagerValp

Registered: Dec 2001
Posts: 1078
I've never understood the restore protection fetish. It's the system soft reset key, of course it causes a crash if you press it at the wrong moment. Heck, make it cleanly exit to basic if you feel the need to handle it somehow.

And if you're watching a demo, why the hell would you be pressing restore?
2018-11-20 12:30
chatGPZ

Registered: Dec 2001
Posts: 11386
i like to make it "crash gracefully". ie do something silly. perhaps format the disk. or something :)
2018-11-20 13:25
Peiselulli

Registered: Oct 2006
Posts: 81
Quote: Quoting Oswald
also not always blockable, sometimes you want to use nmi with timers for something.
NMI usage or not, it's always possible to prevent crashes when pressing restore.


Only with restrictions. If you want to get the NMI stable with the timer method (NMI vector pointing to $dd04), you will have 63 different addresses in the code that could be reached, not about 10 as in normal use case. And you need also an extra check to distinguish between a timer NMI and the restore key.
2018-11-20 14:14
MagerValp

Registered: Dec 2001
Posts: 1078
It's a waste of bytes, cycles, and brainwaves that are better spent making something interesting.
2018-11-20 20:08
Krill

Registered: Apr 2002
Posts: 2980
Quoting Peiselulli
Only with restrictions. If you want to get the NMI stable with the timer method (NMI vector pointing to $dd04), you will have 63 different addresses in the code that could be reached, not about 10 as in normal use case. And you need also an extra check to distinguish between a timer NMI and the restore key.
Set CIA2 timer A period to 9 cycles and set CIA2 timer B to count 7 timer A underflows (9 cycles * 7 = 63 cycles), then let timer B trigger interrupts, NMI vector still pointing to timer A counter ($dd04).

Et voilà, one timer NMI per rasterline with only 9 interrupt handlers (maximum variance is 8 cycles). No need to check for restore (i.e., rule out the timer interrupt condition). Glitches caused by pressing restore generally aren't avoidable anyways with active NMIs, but i still maintain that crashes are.

That said, i think it's a nice touch to handle restore gracefully (you might accidentally hit it), just like hidden parts, nice dir-art, shift lock to stay at the current part, or a user mode to play with. None of those are required for a good demo, of course.
2018-11-20 21:28
soci

Registered: Sep 2003
Posts: 480
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.
2018-11-20 21:39
Krill

Registered: Apr 2002
Posts: 2980
Obvious rhetorical answer: 42.
2018-11-20 21:45
soci

Registered: Sep 2003
Posts: 480
Not quite as much. It's 8 to 10.
2018-11-20 21:46
Oswald

Registered: Apr 2002
Posts: 5094
"Set CIA2 timer A period to 9 cycles and set CIA2 timer B to count 7 timer A underflows (9 cycles * 7 = 63 cycles), then let timer B trigger interrupts, NMI vector still pointing to timer A counter ($dd04).

Et voilà, one timer NMI per rasterline with only 9 interrupt handlers "

instant erect penis. thats beautiful :)
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
WVL/Xenon
saimo/RETREAM
algorithm
sachy/BOOM!
iAN CooG/HVSC
Perplex/Offence
Martinland
Nordischsound/Hokuto..
zscs
Guests online: 146
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 Fullscreen Graphicians
1 Joe  (9.7)
2 Sulevi  (9.6)
3 The Sarge  (9.6)
4 Veto  (9.6)
5 Facet  (9.6)

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