![]() |
| Register | Login | |||||
|
Main
| Memberlist
| Active users
| ACS
| Commons
| Calendar
| Online users Ranks | FAQ | Color Chart | Photo album | IRC Chat |
|
| | |||
| Acmlm's Board - I2 Archive - - Posts by MathOnNapkins |
| Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
| User | Post | ||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2044/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by Danielle I wonder if Uma became dangerous since the filming of Kill Bill... like if I tried to stalk her would she bust out a katana make cold cuts out of me? ![]() |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2045/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| Well... keeping track of values stored in memory would certainly require a full or nearl full emulation. I'm not sure if I would add that at this time. I am mainly writing thie program for my own use, but am releasing it to the public b/c others probably would find it useful. But let me first ask, is this feature not implemented in the usage files of Geiger's debugger? I.e. if a DMA transfer is initiated, that area of the rom is not marked as such? I think it's more a task more appropriate for a full fledged emu or tracer, since you could be actually be doing DMA transfers on several different areas. For example, I've seen stuff almost exactly like this before: LDA #$80 BRA dma_transfer LDA #$7F BRA dma_transfer LDA #$00 BRA dma_transfer LDA #01 dma_transfer: *blah* Now since there are obviously many different entry points into this routine, you will get varying results.... and.. quite frankly I'm not really sure how to deal with that with the code I have. And I don't even have an emu set up yet. I know I can write one, b/c I have one written in java on my webpage . So time is an issue there, but even with an emu set up, an algorithm for detecting these alternate results would be troublesome, wouldn't it? And that would necessitate many more initial settings, potentially. Such as the values of all registers, the state of the stack prior to the routine. It seems way too much for such a simple project as this. But feel free to enlighten me if I'm mistaken.*** As for the "rare" opcodes thing. I think I will do the following... have settings for each opcode individually. And possibly allow the user to pick from some user defined sets that are swappable and can be saved for later use. Often if you are in a particular region of a rom some opcodes are rare while others are more frequent... I'm picturing a 16 by 16 grid of checkboxes or something... suggestions on this would be nice. Certainly if you are supposed to be in 16-bit mode, the opcodes ranging from 00-0F are more suspect than others. This includes COP and BRK. I don't think customizability will be a problem though... *** As an aside, how are custom chips such as the Super FX communicated with? I had assumed that they might have used the COP, but I figured it was possible they might communicate with other special memory regions, like in the $2000 area of bank 0. |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2046/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
ah... so that's why games like Starfox and Doom have those seemingly huge .srm files tacked on. How do those games handle battery backup? As in, what bank do they write to instead? This is completely off topic, I realize, but it's my thread goddamit .As for the dma/hdma table generation* and data marking, (to nevitski and d4s) I would suggest bugging Geiger about adding those features to his usage files. In the future I may be able to import such usage files for my own usage - *sigh* almost sounds like a pun. One thing I'd like to see in his debugger is breakpoints on writes of specific values, rather than the general case of noticing writes to a memory location (e.g. search for writes to $1E00 of value #$5555...) So... I'm ruling out in the short run that those features will be included. The nature of the emulation just is too incomplete, and the algorithm to detect such features with what I have seems hard if not nearly impossible to come up with in a general case. *d4s: I'm still not sure what kind of table you'd want generated. If you can provide a simple mockup, either a graphic or text based, I could determine its feasability. Like if you're looking to create a running list of addresses where dma or hdma transfers take place, I don't suppose that would be hard. But I still need more info. ----- But I will allow for optional rom address / snes address labels b/c we clearly have different methods, and it would be a cinch to work in. ------ As for more suggestions, they are always welcome, but at this point I'm going to start going back to coding a bit more intensively and try to finish things up, then get a release going. HH: customizable output will probably be included to an extent. To what degree we will have to debate later on. I mean, I think most people would like the auto placement of internal labels (with or without addresses), but maybe some people don't like that, for whatever reason? who knows why they wouldn't but... who knows. On the otherhand, this isn't like a tracer that tells you a lot of information you might not even care about. like the P register, X, Y, A, etc. (edited by MathOnNapkins on 07-06-05 06:22 AM) |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2047/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by UnsurpassedDarkness |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2048/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by Zzanitari You probably can't see it b/c Swampgas, the admin of zophar.net has been moving over to another server or something. And all the people with subdomains are having to negotiate with him to keep their space. so it will probably be back up in a matter of time. |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2049/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by Kitten Yiffer You're only got, what, 3 days left? |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2050/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| No offense, but I don't like topics like this, b/c they are borderline begging, unless you show some intent to make an editor yourself. | |||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2051/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by HyperHacker n00b. |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2052/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by Arwon what kind of omettes do YOU make? :\ |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2053/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| Okay guyz... bumpage before the release. I expect to have it shipping by tomorrow. I've met some delays over the past few days since i forgot to add a few things. Currently the only thing that needs to be added is the ability to select which opcodes are rare and which are not. But that's being taken care of and I'm almost there. Nearly everything on my original list and most of the more doable suggestions have been added. The help file is nearly complete. The release is set to be open beta b/c i don't want to bog anyone down with the responsibility of being a beta tester. As with any program there may be bugs but I try to squish them as much as possible. Alert me if you can verify one. I'm also going to release the sources (for Visual C++ 6.0) But it's truly written in C, hardly any C++ really. Things that didn't make it in: php, plp, and general stack tracking. I concluded it was probably more work than it was worth. there are no current plans to add it in. If you desperately start needing this contact me. data table generation, however JUMP TABLE GENERATION is here and it's a nice-uh . Choose from 4 slick jump table formatshdma/dma stuff. Probably better suited for an advanced debugger and tracer. *shrug* C source code recovery - no clue how to do this insertion of labels for known variables - might be done in the future, probably by means of a list ing of #Define delcarations in a file you'll have to include in the same directory as the Rom with the same name but different extension. Interesting idea but the motivation isn't there at this time. other stuff, like Euclid requesting reassembly capability. not in the foreseeable future will this happen On Zophar's MDomain, somoen said I should detect hi-rom and headers.didn't do it. sorry. You have no business disassembling a rom if you don't already know these crucial details. |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2054/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by NSNick So.... Soylent Green comes in liquor form these days? sweet |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2055/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| I've never understood the debate over having the 10 commandments on gov't property. What purpose does it serve? Do you need a reminder when you're going to pay that parking or drinking ticket what the ten commandments are? If you can't remember them go to church more often. If anyone can tell me a practical reason to have them on gov't land I'd love to hear it. We are not Jesusland. Yet. | |||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2056/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| Next time I go out instead of the blue AMF (adios motherfucker) drink I usually get i'm going to request a green RPM (Rest in Peace Motherfucker). Btw a friend of mine eats the skin off her fingers, should i be worried? |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2057/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
pictures:![]() yay ![]() so you wanna be a punk? ![]() okay be a punk ![]() <3 <3 ![]() more <3 linky : http://mypage.iu.edu/~dwaggone/ Okay finally I have something worthy of releasing. Many suggestions and input have been put into creation of this tool. Some made it in, some didn't. See the suggestions thread for info on that. Though, in the final version I might add in support for recognition of labels or macros b/c I feel pretty confident with what I have now. If this output doesn't appeal to you I still strongly suggest you download it and give it a try. it supports output to .txt which removes all formatting. And I've included source so at the bare minimum you could hack it if you had the inclincation. There many options, as you can see from the first picture, but there are quite a few that are not shown there. It saves all your preferences on rare opcodes, jump table style (very slick), normal vs. MON settings. A few of the features are not directly available in the menu or the buttons - F5- hit to obtain a disassembly with linear override enabled. F3 - is normal disassembly F6- hit to bring up a dialog for altering opcode rarity. "Load" is if you just want to view the status of the opcode. "Toggle" also loads the opcode's info first, and then toggles its status, so you don't have to worry about altering the wrong flag b/c you didn't load it. Many more concerns are addressed in the help file (.html) included. The sourcecode is for Visual C++ 6.0 and above, and includes everything you would need to get started. Report bugs and concerns in this thread. If you have outright suggestions, please use the other thread http://board.acmlm.org/thread.php?id=15848. (edited by MathOnNapkins on 07-14-05 06:49 PM) |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2058/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| It's not designed to disassemble a whole rom. More than likely you would get incorrect results and probably land some jump instructions leading outside of the rom itself- which causes it to stop disassembling and give an error message. But for most purposes it's fast. I could alter that but I don't think it's a good idea. | |||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2059/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| I believe you are correct, and I had to go back to my own docs to check. CMP does unsigned subtraction: A - operand -> result. If(result < 0) clearcarry( ); This clearly will never happen if I understand this correctly. Could it be that the state of the carry flag before the CMP occurs has some bearing? For example, if you do ADC #$0000, if the carry flag is set it will add one to the result. But I really don't think that is the case for CMP. I will have to consult some other docs. Edit: If you are right... then the compiler they wrote erroneously used BCC when it should have used BMI. (edited by MathOnNapkins on 07-15-05 02:46 AM) |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2060/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Originally posted by Omega45889 Well technically it is optimal for any contiguous length of code that would work under normal circumstances. The disassembler assume to certain extent that the code you are ripping is correct. Correct... enough. I've seen routines as long as 1000 bytes or more. Didn't choke on those. Actually the real time saver is in the longer routines. Short routines are annoying b/c you have to type in the boundaries more often. |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2061/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
Of course, I've heard of older hacks like Super KKK Bros. and such? And those weren't causes for alarm. Or were they ? Nobody here does offensive hacks so I don't really see it as an issue for us. |
|||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2062/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| Well one thing that will tend to get restricted is if you're at, say, a school football game and someone gets on the mic asking everyone to pray for this or that or whatever. That is certainly guaranteed to get the government at your door, b/c it's viewed as imposing your religion upon the crowd. I've seen a hanfdful of new stories that pretty much go like that. Most of them in Texas. | |||
MathOnNapkins![]() Math n' Hacks Level: 67 ![]() Posts: 2063/2189 EXP: 2495887 For next: 96985 Since: 03-18-04 From: Base Tourian Since last post: 1 hour Last activity: 32 min. |
| ||
| As I said on the Gfaqs board, I'm working on a patch to disable the battle music (b/c the dungeon music is usually much better). It's successful in most cases. The only problems I've had so far is the dungeon music falling in volume and then quickly jumping back up after a battle is over. And the battles in the Sand Pit also seem to trigger battle music for whatever reason. Haven't spent much time on it but I'm totally working out of a hex editor with a few notes, so what do you expect. There have been no issues with boss music not triggering as of yet. |
| Pages: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 |
| Acmlm's Board - I2 Archive - - Posts by MathOnNapkins |
