User:Gpz: Difference between revisions

From vice-emu
Jump to navigation Jump to search
mNo edit summary
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
== TODO ==
* update and/or fix cartconv :)
=== Cart System ===
==== general ====
* some remaining cleanups:
** IDE64 should save its config (cmos ram) to a binary instead of abusing vicerc
* rework slot1 carts enable mechanism like slot0 carts (ISEPIC, RamCart, Expert, DQBB)
* implement i/o dump support for more carts. optional, low priority
==== snapshots ====
* implement snapshot support for more carts. not criticial, low priority. (MMC64, Magic Voice, MMC Replay,MIDI, Ethernet)
** implement snapshot support in the following cores:
*** cs8900 (Ethernet)
*** t6721 (Magic Voice)
*** spi-sdcard (MMC64, MMC Replay)
*** spi-eeprom (MMC Replay)
*** midi (MIDI)
** invent a mechanism to deal with SD-Card/HD Images (MMC64, MMC Replay, IDE64)
==== Clock Port Resource ====
* update the resource handling for the clockport (export resource) (MMC64, MMC Replay, Retro Replay)
* create logic to handle clock port devices
* make hooks to handle rr-net, silversurfer, mp3@c64
==== Shortbus Resource ====
* create logic to handle short bus devices
=== individual Carts ===
some carts do not work 100% yet, or are downright buggy:
==== KCS ====
* BLOADing a frozen program does not work
<div style="color: red;">
==== Magic Voice (49) ====
* debug interaction with TPI
* rewrite using a more cycle exact and event based model
</div>
<div style="color: red;">
==== MMC Replay (38) ====
* write test programs for the various mapping modes and review the emulation. (only the BIOS mode works right now)
* fix memory-peek for monitor
</div>
<div style="color: red;">
==== Stardos (31) ====
'''alternative dump needed'''
</div>
* Disk Copier does not work
** this is a weird bug, it does not crash but actually cleanly exit from the menu, as if the feature is not there - because appearently a related check in the rom fails.
Note: this very much looks like the dump which is circulating is either broken, or an early and incomplete version of the software.
==== DQBB (-) ====
* add 32/64/128/256K RAM option
==== Retro Replay () ====
* add "nordic replay" and 64k RAM options
==== IDE64 () ====
* add IDE64 eth64 shortbus expansion support
* add IDE64 duart shortbus expansion support
==== SFX Sound Sampler (-) ====
* add SFX sound sampler audio input support
==== REU (-) ====
* review code and if possible make all special cases into general cases
** reu_dma() in c64mem.c, plus256k.c, c64memsc.c, c64_256k.c, c128mem.c, c128mmu.c
** reu_ba_register() in c64memsc.c
** reu_dma_start() in mainc64cpu.c
==== Magic Formel () ====
* move MC6521 chip core to the core directory
=== Rendering ===
=== Rendering ===


Line 106: Line 13:


* video/video-render.c:render_yuv_image (yuv renderer main)
* video/video-render.c:render_yuv_image (yuv renderer main)
switching from/to fullscreen (alt-d):
* video/video-resources:set_fullscreen_enabled
** video_chip_cap->fullscreen.enable (arch/unix/x11/fullscreen.c:fullscreen_enable)
*** arch/unix/x11/xrandr.c:xrandr_enable
**** set_xrandr
***** FIXME: grab/ungrab mouse pointer
**** arch/unix/x11/gnome/x11ui.c:x11ui_fullscreen
** video_chip_cap->fullscreen.statusbar (arch/unix/x11/fullscreen.c:fullscreen_statusbar)
setup: video_chip_cap set in:
* arch/unix/x11/fullscreen.c:fullscreen_capability

Latest revision as of 02:31, 3 July 2012

Rendering

  • check and maybe also make chip specific: "AspectRatio", "TrueAspectRatio", "KeepAspectRatio"

call tree

normal rendering call sequence:

  • video/video-canvas.c:video_canvas_render
    • video/video-render.c:video_render_main (renderer main)

YUV rendering call sequence:

  • video/video-render.c:render_yuv_image (yuv renderer main)

switching from/to fullscreen (alt-d):

  • video/video-resources:set_fullscreen_enabled
    • video_chip_cap->fullscreen.enable (arch/unix/x11/fullscreen.c:fullscreen_enable)
      • arch/unix/x11/xrandr.c:xrandr_enable
        • set_xrandr
          • FIXME: grab/ungrab mouse pointer
        • arch/unix/x11/gnome/x11ui.c:x11ui_fullscreen
    • video_chip_cap->fullscreen.statusbar (arch/unix/x11/fullscreen.c:fullscreen_statusbar)

setup: video_chip_cap set in:

  • arch/unix/x11/fullscreen.c:fullscreen_capability