Debugger changes (was: Some changes..)
Hi Toni,
- can be added a 'memory block fill' command in debugger? (maybe there is but I've not found it..) - command xx doesn't act the same from GUI and CLI: from CLI you can switch to GUI without reactivating emulation, not the vice versa (better w/o reactivating!). - it's possible to add a command to directly jump to 'properties window' (F12) from debugger, to change some emulation property without neither code executed, and return back? Thanks! :) ross |
Quote:
Quote:
Quote:
GUI is only opened during emulated vblank so it isn't going to be instant. |
Thanks for reply :)
Quote:
Quote:
Quote:
Bye! ross |
Quote:
Assembler would be nice but I have no idea how to make it from CPU emulator tables. I won't accept separate external assembler, it must be based on "gencpu" tables. EDIT: table68k should have enough information to create assembler, someday.. Quote:
|
Quote:
|
Code:
Wf <addr> <endaddr> <bytes or string like above>, fill memory. Thanks Toni! Cheers, ross |
Assembler seems to be very possible. Only need some annoying text parsing.
Warning: it probably will be a bit weird with some instructions, just like the disassembler.. |
This is a BIG news!
:) |
Assembler is now partially done.
- two modes, immediate ("a address instruction") and interactive mode ("a address", return. empty line exits) - "weird" instructions like MOVEM not yet supported (Weird syntax "MVMEL #mask,EA" and "MVMLE #mask,EA" do work..) - 68020+ addressing modes not yet supported (scale factor will be implemented, not sure if I bother with other 68020+ modes) - MMU and FPU instructions are not supported - Only accepts original Motorola syntax even if disassembler uses 68020+ syntax only.. (Both will be supported later) - Out of range values are truncated, no errors reported. - ADD x,An is not supported, it needs to be ADDA (and so on) - And more? Test and report all issues. |
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
- absolute addressing work but without $ sign - Bcc only relative to start of 'interactive mode' address - bit instruction do not work (maybe they works but I did not find the syntax :)) This new feature is really useful! Thanks Toni, ross |
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
|
Quote:
Quote:
(ex. suppose in interactive mode you insert various instructions and then a bcc, the branch is relative from the first instruction..) mmh no i'm wrong :) :great ross |
- "New" syntax (d16,An) and (d8,An,Xn) are now supported.
- Xn multiplier is supported (68020+ only) - bit instruction/shifts with immediate value now work (any instruction that had immediate included with first opcode word and instruction was not somethingQ) Note that btst and friends require .b or .l, it is not handled automatically. EDIT: automatic now. EDIT2: ADD vs ADDA is now handled automatically. |
Quote:
All is working. There is an exception, one of the most strange instruction in 68k ISA: BTST dx,#immediate :great |
- BTST Dn,#x is now working (It didn't work because I forgot about that and I hardcoded destination immediate = word size instruction to make LINK working easily..)
- MOVEM is now sane :) |
Awesome :)
|
I guess it is good enough now?
|
Yes! I've to deep test it but is great.
Thanks!!! ross |
Quote:
How do you do it, Toni? |
Quote:
Assembler is only couple of hundred lines of code and 2/3 of code is ugly text parsing. (Get source and possible destination opmode and other parameters) Main code is more or less a big loop that iterates already existing opcode table, multiple times, trying to find single matching entry using parsed data. All the opcode data already existed, it only needed to be used to make an assembler. Writing the code was the easy part, finding working logic was more difficult. |
All times are GMT +2. The time now is 04:35. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.