Page 7 of 9

Re: New release of SpecEmu

Posted: Sun Dec 04, 2022 10:30 am
by edjones

Re: New release of SpecEmu

Posted: Sun Dec 04, 2022 10:37 am
by Luzie
From Changelog.txt:
v3.2 build 04/12/22
-------------------

Improved snow effect emulation (thanks, Weiv)
Fixed "tapeinvert" command (in command parser) to invert bit 6 of IN #FE only with tape input (thanks, cngsoft)
Added a list of some of the debugger's command parser commands into the Docs folder
Added a few examples for the conditional breakpoints into the Docs folder

v3.2 build 01/10/22
-------------------

Fixed AY noise frequency running at half clock speed. 20+ years to spot it..

Re: New release of SpecEmu

Posted: Sun Dec 04, 2022 11:47 am
by edjones
From Conditional Breakpoints.txt:
Not really useful yet...

PC, SP
IX, IY
IXH, IXL, IYH, IYL
AF, BC, DE, HL
A, F, B, C, D, E, H, L
AF', BC', DE', HL'
A', F', B', C', D', E', H', L'
MPTR
IR
I, R
IM, IFF1, IFF2
MRA, MWA - mem read addr, mem write addr
MRV, MWV - mem read value, mem write value

PRA, PWA - port read addr, port write addr
PRV, PWV - port read value, port write value
- can use IN, OUT in place of PRA, PWA

P0 - page at #0000 (0-7 or #FF for ROM)
P1 - page at #4000 (0-7 or #FF for ROM)
P2 - page at #8000 (0-7 or #FF for ROM)
P3 - page at #C000 (0-7 or #FF for ROM)
PAGING - combination of P0-P3 combined in 16 bits, so only #F for ROM bits
ie: PAGING = #F527 is ROM at #0000, page 5 at #4000, page 2 at #8000, page 7 at #C000

TS - current T-State counter (up to 65535 only :p)

SNOW - snow effect active? (0 or 1)
SCREEN - active display on 128K models. (0 or 1)
BORDER - current border colour (0-7)
FRAMEINTS - current acknowledged interrupts counter (=1 at next interrupt in current frame or next interrupt after EI, > 1 for next retriggered interrupt)

FDC0 - FDC8 - current FDC parameters specific to individual +3 drive controller commands.


Currently all breakpoint conditions can only be specified as conditions that must all be True (as if all results were ANDed together, but without an AND operator)
Examples:
pc>=32768
hl=de b>128 b <= 255
(23560)=13
(32768.w) = ix iy!=23610

All can be given as one-shot "stop" breakpoints in the command parser, overriding all other conditions until the debugger next opens
stop snow=1
stop pc=0
stop (pc)=#c7 (RST 0 about to be executed)
stop (pc.w)=#b0ed (LDIR about to be executed, little endian!)
stop (pc.w)=#b0ed de>=49152 (LDIR about to be executed, check for legal DE write address range)
stop mwa>=23296 mwa<23552 (if you wanted to find code inadvertently writing to a mem range)
stop P3=7 mwa>=#c000 (what's writing to bank 7 in error)
From Debugger command parser.txt:
copymem src,dest,count
fillmem dest,size,value
out port,byte
basic - (attempts to..) return to BASIC leaving mem mostly intact
new ramtop - as CLEAR ramtop, NEW; leaves mem intact above ramtop but any BASIC prog is lost.
set tstates value - change current tstate count in the frame
set intlen value - change the interrupt period for the current machine
keyb - simple list of keyboard ports
ay - lists the currently selected AY register and all AY register values
master "program name" 48|128 filename.tap (if zx7.exe is in SpecEmu's folder)
tk - lists current values of port $FC and $FF for TK-90x
hz - refresh rate of current machine
tapeinvert - invert tape polarity
stop <breakpoint conditions> - creates a conditional breakpoint which overrides all other conditional breakpoints until the debugger next opens
slowmo - creates a false interrupt delay when writing to display memory (see how some games draw the screen)
bw - sets black & white mode (or supply an attribute value parameter), use along with slowmo to see screen drawing at work
asm <opcode> - if pasmo.exe is in the SpecEmu folder, assembles an opcode at the address at the top of the disassembly window
ops - opcodes executed since last time the debugger opened

z80v1 - saves 48k .z80 snaps in v1 format
z80v3 - duh

Re: New release of SpecEmu

Posted: Mon Dec 05, 2022 9:59 pm
by Eugene C.
Joypad does not work?

Re: New release of SpecEmu

Posted: Tue Dec 06, 2022 10:10 am
by Luzie
Eugene C. wrote: Mon Dec 05, 2022 9:59 pm Joypad does not work?
Seems to be true. Older version v3.2 build 01/10/22 works OK, but not latest v3.2 build 04/12/22 anymore. (I tried with "Retro-Bit Official SEGA Mega
Drive 8-Button 2.4Ghz Wireless Arcade Pad" which is OK detected/working under Windows 10x64).

Re: New release of SpecEmu

Posted: Tue Dec 06, 2022 10:43 am
by Ralf
These conditional breakpoints are really interesting. Till now only Spin had them in so advanced form and it happened to be sometimes buggy.
I'll try to check them out.

Re: New release of SpecEmu

Posted: Tue Dec 06, 2022 4:40 pm
by goodboy
Ralf wrote: Tue Dec 06, 2022 10:43 am These conditional breakpoints are really interesting. Till now only Spin had them in so advanced form
didn't you know about the unreal emulator ?

Code: Select all

      examples:

           (out+1) | (in+1)       - in/out to any port
           (in & 8001) == 0       - read keyboard row from <B> to <SPACE>
           !(out & 1)             - any out to port #FE
           (out & 0FF)==0BB && (val==0F3 || val==0F4) - reset General Sound
           (out & 0FF)==0FD && (val&7)==3   - set 3rd memory page
           (FD & 7) == 3                    - the same
           M(pc)==0CB && pc->1 >= 10 && pc->1 <= 17
                - set break on executing instruction "rl <reg>"

Re: New release of SpecEmu

Posted: Tue Dec 06, 2022 5:09 pm
by Alessandro
Eugene C. wrote: Mon Dec 05, 2022 9:59 pm Joypad does not work?
I think so. I made some play tests with a simple but working PlayStation-type USB joypad, and noticed Kempston input is definitely broken in 04.12.2022 build.

Re: New release of SpecEmu

Posted: Tue Dec 06, 2022 9:34 pm
by azesmbog
https://keybase.pub/woodywoodster/spece ... 061222.zip
joypad emulation was broken :p
v3.2 build 06/12/22
-------------------

Fixed joypad emulation (had switched to new include files which had incorrect joypad structures)

Re: New release of SpecEmu

Posted: Wed Dec 07, 2022 2:54 pm
by Eugene C.
It still doesn't work for me...

Re: New release of SpecEmu

Posted: Wed Dec 07, 2022 4:31 pm
by Ralf
didn't you know about the unreal emulator ?
Well, actually I didn't. My problem with Unreal emulator is that it is a real behemoth with hundreds of configuration options, emulating dozens of Russian clones and using dozens of keyboard shortcuts. Or at least I remembered it so. So generally I stick to simple friendly stuff like Spectaculator. Or use things like Spin or SpecEmu when Spectaculator misses something (like advanced breakpoints).

Re: New release of SpecEmu

Posted: Wed Dec 07, 2022 5:38 pm
by azesmbog
Eugene C. wrote: Wed Dec 07, 2022 2:54 pm It still doesn't work for me...
works for me.
At least in the test program for sure.
joy - USB360
(checked the previous version - indeed the joystick is not working in it)

By the way, additional Kempston bits are not interrogated. And it's long overdue. Games with support for additional buttons have been around for a long time.

Re: New release of SpecEmu

Posted: Wed Dec 07, 2022 9:29 pm
by XoRRoX
Yay! Really happy with the conditional breakpoints and also the command parser doc 8-)

Already put copymem to use to fill the screen with pixels by copying from 0. And the asm command is also extremely handy.

Thank you Mark :)

Re: New release of SpecEmu

Posted: Sat Feb 18, 2023 4:06 pm
by Luzie
SpecEmu new version v3.2.b180223:

Download: https://keybase.pub/woodywoodster/spece ... 180223.zip

From Changelog:
v3.2 build 18/02/23
-------------------

Fixed +3 floating bus (again)
Fixed a +3 port contention bug (thanks, azesmbog and Arjun Nair)

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 11:35 am
by edjones
Seems keybase is no more and SpecEmu lives here atm:
https://1drv.ms/u/s!AmOOhLw8lDDyhYYr4AAs2_mKFGtn6Q

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 3:00 pm
by Bedazzle
edjones wrote: Sat Mar 04, 2023 11:35 am Seems keybase is no more and SpecEmu lives here atm:
https://1drv.ms/u/s!AmOOhLw8lDDyhYYr4AAs2_mKFGtn6Q
Be prepared!

Image

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 4:15 pm
by andydansby
Avast has almost always false flagged SpecEmul.

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 4:49 pm
by Bedazzle
andydansby wrote: Sat Mar 04, 2023 4:15 pm Avast has almost always false flagged SpecEmul.
Previous version (from 2022.09) isn't.

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 5:04 pm
by Guesser
Woody forgot to include the trojan code in that build.

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 6:06 pm
by XoRRoX
edjones wrote: Sat Mar 04, 2023 11:35 am Seems keybase is no more and SpecEmu lives here atm:
https://1drv.ms/u/s!AmOOhLw8lDDyhYYr4AAs2_mKFGtn6Q
Where did you get this info?

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 6:18 pm
by beginner
XoRRoX wrote: Sat Mar 04, 2023 6:06 pm Where did you get this info?
That info was provided by Woody himself, on the ZX Spectrum discord.

Cheers!

Re: New release of SpecEmu

Posted: Sat Mar 04, 2023 6:33 pm
by Guesser
Woody posted the link in the ZX Spectrum Discord.

It looks super suspicious even without the usual AV matches. Several people have tried to offer him web hosting to put an official download page up :lol:

Re: New release of SpecEmu

Posted: Wed Mar 08, 2023 11:53 am
by azesmbog
Due to the high suspiciousness of several :) people, if I were Woody, I would forbid posting links here and would suggest that especially suspicious people switch to using SPUD. Right, Woody?
And yes, another version of SpecEmu has been released / But you don't need it, do you??

Re: New release of SpecEmu

Posted: Wed Mar 08, 2023 12:30 pm
by Guesser
Being suspicious of random executables posted on web forums is sane behaviour and I'm amazed that in 2023 there's still people who aren't :lol:

Re: New release of SpecEmu

Posted: Wed Mar 08, 2023 1:08 pm
by PeterJ
I would be very happy to host a page here.