Sunday, September 16, 2018

CSpect 1.18

Changes to the debugger. This allows you set breakpoints using the physical address, allowing you to set breakpoints in code not yet paged in. This allows for simpler debugging of proper overlay code.
Also, if your using another assembler, you can use the new -16bit command line to use logical addresses only.

CSpect changes
  • added -16bit to use only the logical address of the MAP file
  • Execution Breakpoints are now set in physical address space. A HEX number or SHIFT+F9 will set a logical address breakpoint. This means you can now set breakpoints on code that is not banked in yet.
  • Next mode enabled when loading a .NEX file



Monday, September 10, 2018

CSpect 1.17.1

Minor update to SNasm. 48K SNAs weren't saving out correctly, and labels under $8000 were whacky. This is now fixed.

SNasm changes
  • Fixed labels
  • Fixed SNA saving



Sunday, September 09, 2018

CSpect V1.17

New version  of CSpect and SNasm with some big changes for those using it to dev. You can now specify segments and save out NEX format packages, allowing you to build "large" packages all from within SNasm.
CSpect will now load the new symbol format and correctly display the proper symbol when that bank is paged in, allowing overlays to work more seamlessly.

CSpect changes
  • ULA colours updated to match new core colours. Bright Magenta no longer transparent by default. Now matches with $E7 (not $E3)
  • Fixed debugger bug where "0" is just left blank
  • New MAP format allowing overlays mapped in. Labels in the debugger are now based on physical addresses depending on the MMU
  • You can now specify a bank+offset in the debuggers memory view (M $00:$0000) to display physical addresses. 
  • Numeric Keypad added for debugger use.
  • EQUates are no longer displayed in the debugger, only addresses. This makes the view much cleaner

SNasm changes
  • SEG command added for Segment control on ZX Spectrum Next machines. Banks are 8K in size.
                                    SEG  NAME,BANK:OFFSET,TARGET_PC ; to create

                                    SEG  NAME              ;to use
  • SAVENEX "name",StartPC,[StackSP] added.
  • New MAP format exported for CSpect



Saturday, August 25, 2018

CSpect V1.16

Okay, so the last version was actually a debug version and so some folk had problems running it. This is a proper release build. There are a couple of additions...

CSpect changes
  • Fixed sprite transparency to use the index before the palette and colour conversion is done
  • -r on the command line will now allow CSpect to remember the window location, so if you move it somewhere, it'll start up there again next time. Just delete the cspect.dat file to reset.



Friday, August 24, 2018

CSpect V1.15

There's been a few folk requesting an updated version so even though it's not a huge change, here it is...


CSpect changes
  • Fixed sprite transparancy index. now reads transparancy colour from sprite palette.
  • Timex Hi-Colour mode fixed
  • M_GETDATE added to esxDOS emulation (MSDOS format)
M_GETDATE 
BC = DATE
DE = TIME

Bits Description
0-4     Day of the month (1–31)
5-8     Month (1 = January, 2 = February, and so on)
9-15    Year offset from 1980 (add 1980 to get actual year)

Bits    Description
0-4     Second divided by 2
5-10    Minute (0–59)
11-15   Hour (0–23 on a 24-hour clock)






    Sunday, August 19, 2018

    Z80 shifts...

    Being a 6502 boy, I have to continually hunt for the shift opcode that I need. So after doing this for about a year now, I thought I'd knock up a little diagram to make it easy. So on the off chance someone else is in the same situation - here it is.


    Saturday, July 21, 2018

    CSpect 1.14

    CSpect changes

    • -joy to disable DirectInput gamepads
    • Re-added OUTINB instruction (16Ts)
    • Fixed a but with MMU1 mapping when reading, it was reading using MMU0 instead.
    • In ZXNext mode, if you have RAM paged in MMU0, then RST8 will be called, and esxDOS not simulated
    • Palette control registers are now readable (Hires Pawn demo now works)
    • Reg 0 now returns 10 as Machine ID
    • Reg 1 now returns 0x1A as core version (1.10)
    • Layer2 transparancy now checks the final colour, not the index
    • Fixed sprites in the right border area (the 320x192 picture demo)
    • Timex Hires colours now correct (Pawn demo)


    SNASM
    • Re-added OUTINB instruction



    Thursday, July 05, 2018

    CSpect 1.13

    CSpect changes
    • Kempston joystick emulation added using Direct Input. All controllers map to a single port, port $001F = 0FUDLR
    • Fixed CPU on WRITE and on READ breakpoints
    • -port1f command line removed
    • .NEX format now leaves IRQs enabled
    • Removed some of the old opcodes from the debugger
    • Removed MIRROR DE
    • Fixed memory contention disable (so now tested!)



    Sunday, June 24, 2018

    CSpect V12.1

    CSpect changes
    • Added .NEX format loading. (see format below)
    • Added nextreg 8, bit 6 - set to disable memory contention. (untested)
    • Added Specdrum Nextreg mirror ($2D)
    • Removed OUTINB
    • Removed MIRROR DE
    • Added sprite global transparancy register ($4B) - $e3 by default, same as global transparancy ($14).
    • NextReg reg,val timing changed to 20T
    • NextReg reg,a timing changed to 17T
    • Added LDWS instruction (might change)


    SNasm changes
    • Added LDWS opcode
    • Removed OUTINB instruction
    • Removed MIRROR DE instruction



    Wednesday, May 16, 2018

    CSpect V1.11

    Minor update to CSpect

    CSpect changes
    • Fixed Lowres window (right edge)
    • You can now use long filenames in RST $08 commands (as per NextOS), can be set back to 8.3 via command line
    • Layer 2 now defaults to banks 9 and 12 as per NextOS
    • Added command line option to retrun $FF from port $1f
    • Fixed a possible issue in loading 128K SNA files. Last entry in stack (SP) was being wiped - this may have been pointing to ROM....
    • Fixed mouse buttons return value (bit 0 for button 1, bit 1 for button 2)