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


Forums > CSDb Entries > Release id #161259 : Superfluid V0.5
2018-01-05 17:27
tlr

Registered: Sep 2003
Posts: 1161
Release id #161259 : Superfluid V0.5

I tried to make a freeze function with a little less stack corruption than usual for this but it seems it didn't work well on 1541u2. Thanks to insane for reporting this!

In the original (old) freezer implementation I more or less acknowledge the freeze immediately to allow switching in cart ram. This way timing critical stuff can be preserved directly to cart ram instead of pushing it to stack. This works _sometimes_ on 1541u2.

In the revised implementation (0.5) I do the regular, push to stack, then wait ~250 ms, then ack freeze. This works fairly reliably on 1541u2.

I guess the problem arises from some double trigging of the NMI but I'm not 100% sure. Looking at the 1541u2 source there doesn't seem to be any debouncing of the button in the FPGA at least. The specification for RR/NR states that the freeze button is digitally debounced so I was hoping that would be the same in all implementations.

REQUEST:
I don't have an actual RR or NR to test on but I did build one 0.5 variant with the original freezer and was hoping someone would be willing to test both that and the original one on RR and/or NR. Any takers?

original (old): superfluid-0.5x.zip
revised (current): Superfluid V0.5
 
... 20 posts hidden. Click here to view all posts....
 
2018-01-07 14:36
tlr

Registered: Sep 2003
Posts: 1161
Would be super! If it works on RR/NR, maybe I can convince Gideon to add debouncing in 1541u2 and friends. :)
2018-01-07 14:45
Groepaz

Registered: Dec 2001
Posts: 8472
i'm actually seriously worried about that there is no debouncing... there is no reason for not doing it, always, and on all buttons.
2018-01-07 15:37
tlr

Registered: Sep 2003
Posts: 1161
I couldn't find it in the VHDL implementation but it's quite a few hierarchies to go through so I may have missed it. There may be debouncing outside the FPGA too.
2018-01-08 21:44
Mr Ammo

Registered: Oct 2002
Posts: 100
Quote: Would be super! If it works on RR/NR, maybe I can convince Gideon to add debouncing in 1541u2 and friends. :)

I have flashed it on a retro replay (revised revision october 2004). The current version that is. I can also flash the old version to it.

Any specifics you would like me to test and you want to know?
2018-01-08 22:14
tlr

Registered: Sep 2003
Posts: 1161
Fantastic!

I'd like to know if freezing and then unfreezing (X in the freeze monitor) is stable with the two versions (this needs to be repeated several times). On 0.5x it fails on 1541u2 most of the time. 0.5 works. The theory is that both 0.5 and 0.5x work on RR.

It should be sufficient to freeze the ready prompt but you could try something else. Note that some timer aspects have known problems (TOD and CIA2 interrupts).
2018-01-11 09:37
AlexC

Registered: Jan 2008
Posts: 242
I'm happy to report that 0.5 current works so far on both of my MMC Replay and RR (red board edition).
2018-01-11 20:30
tlr

Registered: Sep 2003
Posts: 1161
Great! Meanwhile I've gotten a mail stating both versions work on EasyFlash3 (CLPD Version 1.1.1). (thnx HTH!)
2018-01-11 21:05
Groepaz

Registered: Dec 2001
Posts: 8472
on chameleon it freaks out in interesting ways, looks like in the reset screen (extended basic) it keeps resetting over and over. when i press run/stop i get the menu. kinda weird, what feature are you using there that no other existing RR rom uses? =) (v0.4 worked fine btw)
2018-01-11 21:44
tlr

Registered: Sep 2003
Posts: 1161
I guess the problem could be that I'm trying to do something Atomic Power like in the bank switching code. I switch in ram temporarily to preserve the state of $de00 and $01. (RAM contains more or less the same code as the ROM at $de00)

Something like this was introduced in 0.5:
.C:de5f  08          PHP
.C:de60  48          PHA
.C:de61  A9 10       LDA #$10
.C:de63  48          PHA
.C:de64  A9 22       LDA #$22
.C:de66  78          SEI
.C:de67  8D 00 DE    STA $DE00
.C:de6a  A5 01       LDA $01
.C:de6c  8D 86 DE    STA $DE86
.C:de6f  09 07       ORA #$07
.C:de71  85 01       STA $01
.C:de73  68          PLA
.C:de74  8D FC DE    STA $DEFC
.C:de77  8D 00 DE    STA $DE00
.C:de7a  68          PLA
.C:de7b  28          PLP
.C:de7c  60          RTS
Maybe worth to check rr-freeze on it if you haven't.
The $22 mode above might confuse things if NR is emulated instead of RR.
2018-01-11 22:19
Groepaz

Registered: Dec 2001
Posts: 8472
wouldnt that mean it does the same also on nordic replay? (chameleon implements nordic replay)
Previous - 1 | 2 | 3 | 4 - 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
Frantic/Hack'n'Trade
hedning/G★P
blendo75
Archmage/SHAPE
Guests online: 38
Top Demos
1 Uncensored  (9.7)
2 Edge of Disgrace  (9.7)
3 Coma Light 13  (9.6)
4 The Shores of Reflec..  (9.6)
5 Comaland 100%  (9.6)
6 We Come in Peace  (9.6)
7 Lunatico  (9.6)
8 Incoherent Nightmare  (9.5)
9 Wonderland XII  (9.5)
10 Wonderland XIII  (9.5)
Top onefile Demos
1 Dawnfall V1.1  (9.5)
2 Synthesis  (9.5)
3 FMX Music Demo  (9.5)
4 Pandemoniac Part 2 o..  (9.5)
5 Daah, Those Acid Pil..  (9.5)
6 Treu Love [reu]  (9.5)
7 Merry Xmas 2017  (9.4)
8 Dawnfall  (9.4)
9 Gubbdata 2017 Invite  (9.3)
10 SidRok  (9.3)
Top Groups
1 Oxyron  (9.4)
2 Booze Design  (9.4)
3 Censor Design  (9.4)
4 Finnish Gold  (9.4)
5 Crest  (9.3)
Top Crackers
1 S!R  (10)
2 Mr. Z  (10)
3 Mr Zero Page  (9.9)
4 OTD  (9.9)
5 Mitch  (9.8)

Home - Disclaimer
Copyright © No Name 2001-2018
Page generated in: 0.913 sec.