|
Author | Topic: DTV support in VICE (Read 3,993 times) |
1570 Full Member
   member is offline
![[avatar]](http://www.forum64.de/wbb3/wcf/images/avatars/avatar-638.png)
Joined: May 2007 Posts: 168
| |
gmoon Wizard's Apprentice
     member is offline
![[avatar]](http://home.earthlink.net/~dgdtv/images/jaw.jpg)
Joined: Mar 2006 Gender: Male  Posts: 876 Location: Ohio, USA
|  | Re: DTV support in VICE « Reply #1 on May 2, 2007, 7:15am » | |
I'm a little surprised this is happening NOW, but it's a welcome development. Especially if the simplified routines use the DMA registers.
Maybe, like the C64 itself, DTV hacking will continue well past the manufacturing demise.
Looking at the new wiki entry, I'd agree that a new target core would be needed. It might be tough to implement a mappable stack and zeropage as an 'add-on,' as well as the rest of the register file.
Thanks for bring this to our attention.
| |
|
David Murray Moderator
     member is offline
![[avatar]](http://galaxy22.dyndns.org/david-avatar.jpg)
Joined: Dec 2004 Gender: Male  Posts: 1,561 Location: Kennedale, TX
|  | Re: DTV support in VICE « Reply #2 on May 2, 2007, 8:42am » | |
Yeah, but if DMA and the extra graphics modes were working, that would go a long way to allowing us to write/test code for the DTV. At least for me anyway, as those are the only extra features I typically use.
| |
|
1570 Full Member
   member is offline
![[avatar]](http://www.forum64.de/wbb3/wcf/images/avatars/avatar-638.png)
Joined: May 2007 Posts: 168
|  | Re: DTV support in VICE « Reply #3 on May 2, 2007, 8:58am » | |
@gmoon: I first tried implementing dtvmem similar to the c64_256k module (which implements banking). With the current VICE design this needs some exceptions in the zeropage access routines in c64mem.c, adding read/write hooks that substitute mem_ram by dtvmem, and some code that makes the VIC emulation use dtvmem instead of mem_ram. However, Marco and me were unable to fix some issues with this design (VIC IRQs didn't work/fast floppy was broken). We'll try again after some thinking .
@David: Concerning graphics, what modes do you use? Could you write some documentation? The explanations in DTVprogramming.pdf are way too short to be comprehensible without much testing so some more docs might be helpful.
| http://vice-emu.sourceforge.net/ - VICE, now including C64DTV support http://www.c64-wiki.com/index.php/SD2IEC - SD card 'floppy' for the C64(DTV) http://picobay.com/dtv_wiki/ - DTV hacking wiki: Modding/programming the C64DTV |
|
gmoon Wizard's Apprentice
     member is offline
![[avatar]](http://home.earthlink.net/~dgdtv/images/jaw.jpg)
Joined: Mar 2006 Gender: Male  Posts: 876 Location: Ohio, USA
|  | Re: DTV support in VICE « Reply #4 on May 2, 2007, 9:27am » | |
@ David: We'll take what we can get .
Typically I'll use the segment mapper and blitter, so this falls short. But it's very early in development. If only 20-30% of DTV compatibility is achieved, that would be a great accomplishment.
@1570: when might the experimental DTV sources be accessible? It would be fun to help...although I'm entirely unfamiliar with the VICE architecture (I don't even know how timing is implemented. )
The more esoteric parts of the register file (stack & zpage) could probably wait...since I don't know how VICE implements the 65xx addressing modes, it might not be too difficult (or it might be very.) I'm guess it's all done with pointers, so even 'hardcoded' 65xx attributes could be altered.
I agree that the DTV graphic modes need more documentation. 8bpp mode is used most often, and it's fairly well documented. But it would be a shame to 'brute-force' implement it without the VIC functional blocks detailed in the DTVPG (addr generator, pixel shifter, color decoder and data line buffer), so that the other modes might be possible, too.
| |
|
1570 Full Member
   member is offline
![[avatar]](http://www.forum64.de/wbb3/wcf/images/avatars/avatar-638.png)
Joined: May 2007 Posts: 168
| |
David Murray Moderator
     member is offline
![[avatar]](http://galaxy22.dyndns.org/david-avatar.jpg)
Joined: Dec 2004 Gender: Male  Posts: 1,561 Location: Kennedale, TX
|  | Re: DTV support in VICE « Reply #6 on May 2, 2007, 10:07am » | |
Quote: @David: Concerning graphics, what modes do you use? Could you write some documentation? The explanations in DTVprogramming.pdf are way too short to be comprehensible without much testing so some more docs might be helpful. |
|
See if this is any help to you:
http://galaxy22.dyndns.org/dtv/common/tech/256-mode.html
This was a document I wrote some time ago which explains how to use the mode. I only use the 256-color 8-bpp mode, which is what most people around here use. The mode does require using a different memory bank, so DMA support would be required also in order to use this mode. I think some others around here have used the segment mapper instead of DMA, though.
| |
|
tlr Wizard's Apprentice
     member is offline
Joined: Nov 2005 Posts: 844 Location: Stockholm/Sweden
|  | Re: DTV support in VICE « Reply #7 on May 2, 2007, 1:41pm » | |
@1570: If you implement blitter support, 256 color support, palette support + dtv cpu you will be able to run the blitter scroll. That would be cool. 
It's probably a bit tricky, but not _that_ tricky. It does not depend on timing or even have any raster splits. It needs the cpu to go faster than a regular c64, but it does not have to be exact.
| |
|
Shazz Junior Member
  member is offline
![[avatar]](http://www.atari-forum.com/images/avatars/3616144734369e36302bec.png)
8 bits are enough !
Joined: May 2007 Gender: Male  Posts: 64 Location: Grenoble / Alps
|  | Re: DTV support in VICE « Reply #8 on May 2, 2007, 2:00pm » | |
Quote: @David: Concerning graphics, what modes do you use? Could you write some documentation? The explanations in DTVprogramming.pdf are way too short to be comprehensible without much testing so some more docs might be helpful. |
|
Yep.... Me too ! the 8 bit chunky mode is easy to understand but all the other ones FRED and FRED's friends....
| Shazz from TRSi Twice The Fun Double The Trouble |
|
1570 Full Member
   member is offline
![[avatar]](http://www.forum64.de/wbb3/wcf/images/avatars/avatar-638.png)
Joined: May 2007 Posts: 168
| |
gmoon Wizard's Apprentice
     member is offline
![[avatar]](http://home.earthlink.net/~dgdtv/images/jaw.jpg)
Joined: Mar 2006 Gender: Male  Posts: 876 Location: Ohio, USA
|  | Re: DTV support in VICE « Reply #10 on May 3, 2007, 6:07am » | |
Quote:@gmoon: I'm working on banking support. Could you implement 256 color/palette support? That would be great . |
|
I will definitely give it a go. Although it may take a bit to get up to speed on the VICE api...
| |
|
Shazz Junior Member
  member is offline
![[avatar]](http://www.atari-forum.com/images/avatars/3616144734369e36302bec.png)
8 bits are enough !
Joined: May 2007 Gender: Male  Posts: 64 Location: Grenoble / Alps
|  | Re: DTV support in VICE « Reply #11 on May 20, 2007, 1:04pm » | |
based on the wiki page instructions I tried to compile Vice using the DTV patch. I've got some issues... first of all it seems DirectX SDK is needed as the source code references dsound.h, ddraw.h...
So I have installed DirectX SDK April 2007.
So now how can I fix the configuration to get the header files from C:\Program Files\Microsoft DirectX (April 2007)\Include ? As I don't want to patch the makefiles by hand...
thx
| Shazz from TRSi Twice The Fun Double The Trouble |
|
spiff Senior Member
    member is offline
![[avatar]](http://symlink.dk/spiff/spiff.png)
Joined: Sept 2006 Gender: Male  Posts: 349 Location: Virum, Denmark
|  | Re: DTV support in VICE « Reply #12 on May 20, 2007, 3:31pm » | |
Quote:based on the wiki page instructions I tried to compile Vice using the DTV patch. I've got some issues... first of all it seems DirectX SDK is needed as the source code references dsound.h, ddraw.h...
So I have installed DirectX SDK April 2007.
So now how can I fix the configuration to get the header files from C:\Program Files\Microsoft DirectX (April 2007)\Include ? As I don't want to patch the makefiles by hand... |
|
Ahh, yes, I forgot about that. I managed to find a directX 7 SDK (which is considerably smaller than the newer ones). As per the Vice Win32 compilation instructions, all I did was to copy ddraw.h, dsound.h, dinput.h and d3dtypes.h to C:\MinGW\include\
| Mikkel Holm Olsen AKA Spaceman Spiff |
|
Shazz Junior Member
  member is offline
![[avatar]](http://www.atari-forum.com/images/avatars/3616144734369e36302bec.png)
8 bits are enough !
Joined: May 2007 Gender: Male  Posts: 64 Location: Grenoble / Alps
|  | Re: DTV support in VICE « Reply #13 on May 21, 2007, 2:01am » | |
ah damn, instead of patching all the sub makefiles, I should have copied those files  by the way with the lastest DirectX SDK I had patch dinput.h.... some typedef were already defined somewhere else...
oh, Spiff, where can I get a good flashrom with DTVMon and so on ? I tried with David's hummer kernel but does not work.
| Shazz from TRSi Twice The Fun Double The Trouble |
|
spiff Senior Member
    member is offline
![[avatar]](http://symlink.dk/spiff/spiff.png)
Joined: Sept 2006 Gender: Male  Posts: 349 Location: Virum, Denmark
|  | Re: DTV support in VICE « Reply #14 on May 21, 2007, 2:56am » | |
Quote:| oh, Spiff, where can I get a good flashrom with DTVMon and so on ? I tried with David's hummer kernel but does not work. |
|
Well, the problem is the experimental VIC support, which apparently breaks with the normal kernel. I was hoping this was fixed in a newer patch, but the fix so far is to revert the changes in the VIC support (i.e. src/vicii/vicii-draw.c, vicii-phi1.c, vicii.c, vicii-mem.c, and viciitypes.h).
| Mikkel Holm Olsen AKA Spaceman Spiff |
|
|