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 > $D016 bit 5
2023-08-05 18:22
Krill

Registered: Apr 2002
Posts: 2844
$D016 bit 5

There is this mysterious bit early on in the KERNAL reset routine:
FCEF: 8E 16 D0  STX $D016     ; VIC: Control Register 2
with X being anything in [0..5].

Now, some people [who?] claim that without this store to $d016, some [which?] cartridges won't start [citation needed].

However, $D016 apparently used to have a mysterious "reset bit" in supposedly early VIC-II revisions (those with only 5 not 9 luma steps, and then the early ones of those).
   | Bit  5   |    Reset-Bit: 1 = Stop VIC (no Video Out, no RAM  |
   |          |                   refresh, no bus access)         |
Could this be the reason why some things on some machines (?) won't start without that store to $D016?
Do any machines still exist where setting $D016 to, say, $f8 would crash them (when running code from RAM)?
Or did this "reset bit" never exist? =)
 
... 66 posts hidden. Click here to view all posts....
 
2023-08-09 13:37
chatGPZ

Registered: Dec 2001
Posts: 11116
I still don't understand :) You mean the reset routine would set and then unset the bit? (I think we could find out by disassembling MAXBasic or MultiMAX)
2023-08-09 13:43
tlr

Registered: Sep 2003
Posts: 1714
Quote: I still don't understand :) You mean the reset routine would set and then unset the bit? (I think we could find out by disassembling MAXBasic or MultiMAX)

Yes.

Or perhaps starting the thing without a cart or with a dummy cart and see what happens?
2023-08-09 14:02
oziphantom

Registered: Oct 2014
Posts: 478
Quote: i was trying to remember more and then i came across the ECM mode + Bitmap-mode-enabled-at-the-same-time-"bug" again which actually does the black screen thing - but it does not crash. Perhaps the screen blackening happened and i was unable to do anything onscreen and identified that as a halt (i had no monitoring back in the day, let alone real knowledge :shrug:)

so i am not sure if it is actually true that the C128 halted, i just read this thread and remembered "wait i experienced exactly this!" and hastily commented - while i actually should only have asked if this was tried an a C128.

so my apologies, maybe that was a mixed up memory. but it surely was not d030. anyways. maybe i'll dig out the c128 i got in 2015 and try there again later - ofcourse it will most likely not be the same HW revision. Nevermind.


The C128 does have a test bit that stops output, but its on D030 and doesn't use the D016 one as far as I know.
2023-08-09 14:35
chatGPZ

Registered: Dec 2001
Posts: 11116
Quote:
Or perhaps starting the thing without a cart or with a dummy cart and see what happens?

Then it simply does nothing :) But yes, it'd be interesting if the monitor syncs or not in that case
Quote:
The C128 does have a test bit that stops output, but its on D030

Technically the test bit in $d030 doesn't "stop output" - the line counter increases by 1 every cycle when it is set, it still produces a video signal though.
2023-08-09 15:21
chatGPZ

Registered: Dec 2001
Posts: 11116
Quote:
I think we could find out by disassembling MAXBasic

It writes 0 first (at the beginning of the reset routine), then 8 (in the VICII register init loop). So it doesn't toggle bit5.
2023-08-10 05:10
Monte Carlos

Registered: Jun 2004
Posts: 351
According to C64 Wiki the 6566 is a revision used in NTSC machines. So not wonder if the PAL world wonders about the reset bit.
https://www.c64-wiki.de/wiki/VIC
2023-08-10 11:41
tlr

Registered: Sep 2003
Posts: 1714
Quote: According to C64 Wiki the 6566 is a revision used in NTSC machines. So not wonder if the PAL world wonders about the reset bit.
https://www.c64-wiki.de/wiki/VIC


The 6566 is used solely in the MAX Machine which is only available in NTSC, yes.
2023-08-10 12:23
Fungus

Registered: Sep 2002
Posts: 617
I have never seen one in the wild with a 6566. I have seen R4 6567 (less lumas) and R5 6A though.
2023-08-10 13:02
chatGPZ

Registered: Dec 2001
Posts: 11116
As said, its only used in the MAX Machine, it wouldn't work in a C64 even. THAT part is clear :)
2023-08-11 01:14
Fungus

Registered: Sep 2002
Posts: 617
Yeah, someone should correct that in that wiki.
Previous - 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 - 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
stephan-a
Krill/Plush
Dymo/G★P
TheRyk/MYD!
Matt
Majikeyric
Trazan
Guests online: 77
Top Demos
1 Next Level  (9.8)
2 Mojo  (9.7)
3 Coma Light 13  (9.7)
4 Edge of Disgrace  (9.6)
5 Comaland 100%  (9.6)
6 No Bounds  (9.6)
7 Uncensored  (9.6)
8 Wonderland XIV  (9.6)
9 Memento Mori  (9.6)
10 Bromance  (9.5)
Top onefile Demos
1 It's More Fun to Com..  (9.7)
2 Party Elk 2  (9.7)
3 Cubic Dream  (9.6)
4 Copper Booze  (9.5)
5 TRSAC, Gabber & Pebe..  (9.5)
6 Rainbow Connection  (9.5)
7 Wafer Demo  (9.5)
8 Dawnfall V1.1  (9.5)
9 Quadrants  (9.5)
10 Daah, Those Acid Pil..  (9.5)
Top Groups
1 Oxyron  (9.3)
2 Nostalgia  (9.3)
3 Booze Design  (9.3)
4 Censor Design  (9.3)
5 Crest  (9.3)
Top NTSC-Fixers
1 Pudwerx  (10)
2 Booze  (9.7)
3 Stormbringer  (9.7)
4 Fungus  (9.6)
5 Grim Reaper  (9.3)

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