EXTERNAL LINK 68080_debug_layout_1280x720.png 1280*720 39kb I was wondering how a V4 debug screen could look like. The 68080 is a big one. The red colors is V , black is what other 680x0 can have. B is the extended 8..15 address registers so i would keep them close to A. D and E are data. but E can also be float, so E close to FP registers and also D. I like memory to be long repeated, but quad repeated is also handy with the new posibilities. Central could be a disassembled view. To view all of this a big screen would be good, i am thinking of 1280x720. 2 or 3 bitplanes would be enoughto keep memorie consumption low. A view where the address pointers point to direct behind it is handy. Other memorie should be closeby. The data presented in ascii right behind data registers. But i would also like a bit view. A bitview could be done by placing 1pixel-standing-lines close together. Maybe even in a very light red/green/blue tint to show 16bit color seperation. This light red/green/blue tint could also be applyed to 24bit color for normal (ascii-hex) view. Float viewable as exponent 7.742-E4 but friendly 1743.632 would be nice if it fits the range. After each step it would be nice to see a slight highlight to see what is changed vs the previous step. On this picture it is a light blue background as example. I have no knowledge about the amiga hardware yet, but what i first can try is make a very simple one instruction disassember. I am thinking that other people more familiar could use it. To make human-sensible text of a memorie lokation with 68080 instructions. So they could try something out. plan is: -it only needs 1 input value, a memorie lokation let's call it DIS_THIS. (disasemble this instruction) call it like this: lea code,a0 ; memorie lokation to look at bsr DIS_THIS ; where A0 points to your_printing_routine ; this is your code that prints the first instruction bsr DIS_THIS your_printing_routine ; this is the next instruction you print your printing routine looks inside the called routine. lea DIS_THIS,(a0) ; The null terminated string is at 4(a0) And a word value of the lenght is right before it. example1: lea 4(a0),a1 lp: move.b (a1)+,(a4)+ ;copy null terminated string bne.s lp example2: lea 4(a0),a1 move.w -2(a1),d0 ;number of characters subq.w #1,d0 lp: move (a1)+,(a4)+ ;string copy dbra lp In the picture you can find '3 Memorie'. That has a working example of a result.
|