Difference between revisions of "CSpect:known bugs"

From SpecNext official Wiki
Jump to: navigation, search
(V2.12.37 refresh)
(V2.12.38 refresh)
Line 1: Line 1:
  
CSpect V2.12.37
+
CSpect V2.12.38
 
* sprites: the collision bit is not implemented (intentionally for emulator performance reasons)
 
* sprites: the collision bit is not implemented (intentionally for emulator performance reasons)
 
* sprites rendering is not one-scanline-buffer delayed and all changes in sprites affect current/previous scanline (intentionally for emulator performance reasons)
 
* sprites rendering is not one-scanline-buffer delayed and all changes in sprites affect current/previous scanline (intentionally for emulator performance reasons)
Line 8: Line 8:
 
* blending modes: the core 3.1.5 now blends Layer2+ULA in different way ([https://github.com/MrKWatkins/ZXSpectrumNextTests/issues/8 details]), CSpect renders it in the core2.0 - 3.0 way
 
* blending modes: the core 3.1.5 now blends Layer2+ULA in different way ([https://github.com/MrKWatkins/ZXSpectrumNextTests/issues/8 details]), CSpect renders it in the core2.0 - 3.0 way
 
* sprites: clipping is incorrect on Y2 in over-border mode, showing many pixels below the edge (other variants were not tested, so they may or may not be correct)
 
* sprites: clipping is incorrect on Y2 in over-border mode, showing many pixels below the edge (other variants were not tested, so they may or may not be correct)
* DMA: reading registers seems to work only once, right after "read mask" setup
+
* DMA: reading-registers improved a lot in .38, but still can produce misleading values (bit5+0 not set correctly after LOAD for example, but there are few more subtle (but probably harmless) differences from zxnDMA)
 
* DMA: Zilog mode is not implemented (port 0x0B)
 
* DMA: Zilog mode is not implemented (port 0x0B)
 
* NextReg $02 does not implement soft-reset (and probably also no hard-reset)
 
* NextReg $02 does not implement soft-reset (and probably also no hard-reset)
Line 18: Line 18:
 
* when running without the full NextZXOS card image, the esxdos services are provided by the emulator itself, the implementation is very limited and crude (most of the returned values are incorrect/etc, but loading files works)
 
* when running without the full NextZXOS card image, the esxdos services are provided by the emulator itself, the implementation is very limited and crude (most of the returned values are incorrect/etc, but loading files works)
  
not verified in V2.12.37 (but known bugs of older versions, may be still present):
+
not verified in V2.12.38 (but known bugs of older versions, may be still present):
 
* the initial file-import sequence of CP/M BIOS fails. (get cpm-a.p3d file from somebody with a working clean CP/M installation and copy that into c:/NextZXOS, or use other emulator to create the file)
 
* the initial file-import sequence of CP/M BIOS fails. (get cpm-a.p3d file from somebody with a working clean CP/M installation and copy that into c:/NextZXOS, or use other emulator to create the file)
 
* layers clipping - were +-1 or 2 pixel incorrect, but .37 fixed the ones I had in tests, need new test to verify all layers in all possible modes - .37 is probably mostly fixed
 
* layers clipping - were +-1 or 2 pixel incorrect, but .37 fixed the ones I had in tests, need new test to verify all layers in all possible modes - .37 is probably mostly fixed
 
* blending modes: the new core3.1.3 blending (with extra Tiles|ULA front-slice) is not supported
 
* blending modes: the new core3.1.3 blending (with extra Tiles|ULA front-slice) is not supported
* direct loading of NEX file doesn't init the machine in the same way as NEXLOAD from NextZXOS (memory has random values (was filled with $FF before V2.12.37), etc)
 
 
* direct loading of NEX files does not support all combinations of loading-screen type and palette on/off (but V2.12.9 does load more files than V2.12.5) (but the unofficial V1.3 NEX file is partially supported)
 
* direct loading of NEX files does not support all combinations of loading-screen type and palette on/off (but V2.12.9 does load more files than V2.12.5) (but the unofficial V1.3 NEX file is partially supported)
 
* sprites: the default clipping is wrong (set clip window explicitly any way) - this one was maybe silently fixed without changelog note, but I'm not sure (not interesting enough to run precise test)
 
* sprites: the default clipping is wrong (set clip window explicitly any way) - this one was maybe silently fixed without changelog note, but I'm not sure (not interesting enough to run precise test)
 +
* direct loading of NEX file - the .38 should init nextregs same way as NEXLOAD (memory is still randomized, intentionally, that's not a bug) <del>doesn't init the machine in the same way as NEXLOAD from NextZXOS</del>
  
 
Platform Specific
 
Platform Specific
 
* Mac: Mouse does not work / behaves erratically
 
* Mac: Mouse does not work / behaves erratically
 
* Mac: after launch keyboard being irresponsive - try "alt+tab" to other app and back
 
* Mac: after launch keyboard being irresponsive - try "alt+tab" to other app and back

Revision as of 23:11, 19 November 2020

CSpect V2.12.38

  • sprites: the collision bit is not implemented (intentionally for emulator performance reasons)
  • sprites rendering is not one-scanline-buffer delayed and all changes in sprites affect current/previous scanline (intentionally for emulator performance reasons)
  • modifications to NextRegs done in copper propagate to rendering usually only once per scanline, usually retroactively for whole current scanline when triggered in h-blank area (palette changes, X/Y offsets, etc) (mostly intentionally for emulator performance reasons)
  • modifications to NextRegs done by CPU propagate to rendering usually only once per scanline, usually retroactively for whole current scanline (mostly intentionally for emulator performance reasons)
  • missing Nextreg $64 "video line offset" (core 3.1.5)
  • blending modes: the core 3.1.5 now blends Layer2+ULA in different way (details), CSpect renders it in the core2.0 - 3.0 way
  • sprites: clipping is incorrect on Y2 in over-border mode, showing many pixels below the edge (other variants were not tested, so they may or may not be correct)
  • DMA: reading-registers improved a lot in .38, but still can produce misleading values (bit5+0 not set correctly after LOAD for example, but there are few more subtle (but probably harmless) differences from zxnDMA)
  • DMA: Zilog mode is not implemented (port 0x0B)
  • NextReg $02 does not implement soft-reset (and probably also no hard-reset)
  • sprites: the wrap-around the 512x512 coordinate space is only partially implemented in extreme cases (relative sprite so far from anchor that x8 scale wraps it back onto screen)
  • border color and Enhanced ULA on/off states sometimes produce incorrect color of border and paper
  • default value: $6E and $6F are supposed to be fixed since V2.12.30, but the SNA test still reads zeroes
  • some NextRegs read as zero until they are written into first (quick-boot mode with SNA file without full NextZXOS image) (for example regs $03, $12, $13, $14, $42, $4A, $4B, $4C)
  • NextRegs $09, $34, $41, $8E read incorrectly (reads after certain writes produce wrong value)
  • when running without the full NextZXOS card image, the esxdos services are provided by the emulator itself, the implementation is very limited and crude (most of the returned values are incorrect/etc, but loading files works)

not verified in V2.12.38 (but known bugs of older versions, may be still present):

  • the initial file-import sequence of CP/M BIOS fails. (get cpm-a.p3d file from somebody with a working clean CP/M installation and copy that into c:/NextZXOS, or use other emulator to create the file)
  • layers clipping - were +-1 or 2 pixel incorrect, but .37 fixed the ones I had in tests, need new test to verify all layers in all possible modes - .37 is probably mostly fixed
  • blending modes: the new core3.1.3 blending (with extra Tiles|ULA front-slice) is not supported
  • direct loading of NEX files does not support all combinations of loading-screen type and palette on/off (but V2.12.9 does load more files than V2.12.5) (but the unofficial V1.3 NEX file is partially supported)
  • sprites: the default clipping is wrong (set clip window explicitly any way) - this one was maybe silently fixed without changelog note, but I'm not sure (not interesting enough to run precise test)
  • direct loading of NEX file - the .38 should init nextregs same way as NEXLOAD (memory is still randomized, intentionally, that's not a bug) doesn't init the machine in the same way as NEXLOAD from NextZXOS

Platform Specific

  • Mac: Mouse does not work / behaves erratically
  • Mac: after launch keyboard being irresponsive - try "alt+tab" to other app and back