dotneteer / spectnetide Goto Github PK
View Code? Open in Web Editor NEWZX Spectrum IDE with Visual Studio 2017 and 2019 integration
License: MIT License
ZX Spectrum IDE with Visual Studio 2017 and 2019 integration
License: MIT License
Right now these pragmas support only immediate evaluation (all symbol's values must be known at the moment of evaluation). It would be more flexible if these pragmas would support late evaluation.
After renaming an ASM file, and you run the program and you go into debugging.
The current line is not highlighted.
You first have to close the project and reopen it. Then the lines are highlited again
Sometimes, it is frustrating that the debugger suddenly stops within the body of the RST #38 routine, as a maskable interrupt has been raised.
Add an option that skips the instruction (just like the Skip Over debugger command) when you enter the RST #38 routine, unless you leave the routine with the RET statement.
This feature would allow you to use only the Disassembly view while debugging your app. In particular cases, without it, source code debugging may be frustrating, as you continuously jump fro and to between the Spectrum VM view and source code file with the current breakpoint -- especially with the Step Into and Step Over commands.
Steps to reproduce:
Add an option (Tools|Options|Spect.Net IDE) that allows two layout for the Keyboard tool window:
The highlight from the last breakpoint should be removed.
This issue prevents the "Set as default ..." context menu commands working properly.
Hi,
I was experimenting with a Z80 tutorial and I noticed the following
When I run the code --> Context menu --> Run Z80 program the key presses were not recognised correctly. instead of recognising the values 111, 112, 114 it saw the results as F4h F5h F7h. the spacebar was recognised as correctly with 32
But when I exported the program to a tap file and run it directly in the emulator it was working fine. there the values 111, 112 etc were read correctly
The code checks for
; invite player input
ld hl, last_k ; LAST K system variable
ld a, (hl) ; put last keyboard press into A
cp 112 ; was "p" pressed? in Emulator F4H F5h is been recognised instead of 112
jr z, pright ; jump to PRIGHT
cp 111 ; was "o" pressed? F4H
jr z, pleft ; jump to PLEFT
cp 32 ; was " " pressed?
jr z, pfire ; jump to PFIRE
cp 114 ; was "r" pressed? Why in Emulator F7h ????
jr z, newgame ; jump to NEWGAME
jr ploop ; maintain player input loop
Tutorial with full listing of connect 4:
https://gist.github.com/darrylsloan/e2be3b95bc0cfc390f30ea833c858fc4
Can you have a look at it?
Regards,
Albert
p.s.
Really love your project!!
These operations do not modify the F register at all. The specification says this for LD A,I
:
S is set if the I Register is negative; otherwise, it is reset.
Z is set if the I Register is 0; otherwise, it is reset.
H is reset.
P/V contains contents of IFF2.
N is reset.
C is not affected.
The LD A,R
should work similarly, but the specification uses R
in stead of I
.
I can't always reproduce this one.
But it looks when I'm in debugging mode and the dissassembly and the registers and the memory window are open and I click on F5 "Start debugging" VS hangs.
Some times I can continue after a while. Often I have to break off (throught the task manager)
The emulator is running but I think slowly
I would say the more of the tool windows are open the more likely it is that VS hangs
(Just by switching between Pause and F5 (I haven't got any breakpoints in the line of running code)
If I put a breakpoint where it comes all the time ( And I only use F5) then I can have multiple of those tool windows open.
Pausing the machine should not show the source code with the breakpoint, unless you run the code with the "Debug Z80 program" command.
When I dubug a program and press F11 the z80code window becomes active and sometimes highlites the line with the current instruction (But not always)
The F11 key works fine from the emulator window and from the dissassembly window. But because it jumps to Z80code window, F11 doesn't react and the program doesn't continue for 1 step.
Here the Emulator windows is active When Pressing F11
Z80 dissasembly is updated and the z80code is updated. But it looses focus from the emulator window. ( Or maybe that is not the problem and the solution would be to have the z80code window listen to keypresses?)
Now the Z80code windows is active
Pressing F11 This current line was highlited
Pressing F11 Here the current instruction is not highlited
Pressing F11 Same here the current instruction is not highlited (Although the z80code seems to scroll to the correct place...)
Instead of this message, the IDE should ask the user for confirmation (provided options are set so) to stop the machine, and then restart it.
The following lines fail with undefined symbol errors
scan_line_000: .defw 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
scan_line_001: .defw 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
screen_map: .defw #4000, scan_line_000, #4100, scan_line_001
I would have thought it should have worked as the symbols are declared previously in the file.
Use the same identifiers as for the MODEL directive.
#ifmod and #ifnmod should be work together with #else and #endif as the other conditional directives.
It would be great to replace these pragmas
.defb #55,#55,#55,#55,#55,#55,#55,#55,#55,#55,#55,#55,#55,#55,#55,#55
.defw #AA55, #AA55, #AA55, #AA55, #AA55, #AA55, #AA55, #AA55
with these:
.fillb 16, #55
.fillw 8, #AA55
Along with the CPU tact information, display
Hi Istvan,
I don't know if I understand the working correctly but maybe you can have a look?
When I enter MW 3D00 3FFF. The layout stays as above.
I did manage to get it to get the view below earlier on
But I'm not sure how I did it.
restarting the program closing opening the disassembly window etc.
I cannot reproduce it.
Also I didn't manage to get the Disassambly View. (It could be me though...)
Can you have a look?
BR,
Albert
Right now, the Keyboard tool window does not support key repeat. Modify this behavior so that keeping the mouse button down while over a key allows key repeat to work.
it would be great to be able to replace
.defw 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
with
.defs 32
Fix the refresh cycle of the CPU to comply with this behavior.
The two bytes following the RST #28
call is the address to invoke from the Spectrum 48K ROM. Use the .defw
pragma in the disassembly, and if the invoked address has a label annotation within the Spectrum 48K ROM, display it as a hard comment.
Provide an option (Tools|Option|Spec.Net IDE) that allows you to select a keyboard layout:
Even if you pause, stop, and then restart the vm, the Memory window stays empty. However, starting the vm first, and displaying the Memory window after that, it works as expected.
Disable these items unless there is a default code item selected.
Change the Export Z80 Program command to use this new pragma.
This bug is due to the refactoring of virtual machine controller. The new machine controller simply does not prepare the breakpoints to stop at.
This feature allows you separate entry points for:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.