Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,485,269
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 04-26-24 05:06 AM
Guest: Register | Login

0 users currently in SMW Hacking | 1 guest

Main - SMW Hacking - Blocktool Omega New thread | New reply

Pages: 1 2

Should Blocktool Omega be released?
Yes
No
Multiple voting is not allowed. Changing your vote is allowed. 17 users have voted so far.

Sukasa
Posted on 09-24-07 06:28 PM Link | Quote | ID: 66261


Red Birdo
Level: 92

Posts: 484/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
well, blocktool omega is complete to the point that I could release it and you guys could start making blocks for it (either .asm or .bin blocks). Anyways, I wasn't sure, so I figured I'd make this poll. Anyways, whether I do or not, here are the design considerations for blocks.

  • Blocks have to finish with a JSL now, not a JSR.
  • .bin blocks can't have reloc offsets anymore, and they're not automatically calculated right now. They may be in future, but I can't make any guarantees.
  • Blocks can be exported to mini-archives so that they can be passed around easily and integrated into BTO databases with a minimum of effort (Use BlocksPorter fom the File menu).

blackhole89
Posted on 09-24-07 06:30 PM Link | Quote | ID: 66262


The Guardian
Moloch whose eyes are a thousand blind windows!
Level: 124

Posts: 614/4196
EXP: 21532527
Next: 304074

Since: 02-19-07
From: Ithaca, NY, US

Last post: 471 days
Last view: 84 days



This sounds interesting, and a bit of competition in the block tool can only help the whole thing so yeah, you should release.

____________________



Sukasa
Posted on 09-24-07 06:32 PM (rev. 2 of 09-24-07 06:38 PM) Link | Quote | ID: 66263


Red Birdo
Level: 92

Posts: 485/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
Well, found 2 bugs relating to deleting blocks...

  • Deleting the first block caused a crash, without altering the database. Fixed.
  • Deleting a block when it's the only one present caused a crash. Fixed.


http://sukasa.kicks-ass.org/release.rar

mikeyk
Posted on 09-24-07 07:15 PM Link | Quote | ID: 66265


Paragoomba
Level: 22

Posts: 65/74
EXP: 49978
Next: 8372

Since: 06-11-07

Last post: 6047 days
Last view: 4123 days
.asm blocks? AWESOME!

Can't wait to get started, but a couple of questions before I do. It looks like labels are used to specify entry points -- how exactly do we use those? What assembler's syntax do we need to use in the asm file?


Sukasa
Posted on 09-24-07 07:16 PM (rev. 2 of 09-24-07 07:17 PM) Link | Quote | ID: 66266


Red Birdo
Level: 92

Posts: 486/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
TRASM.

Just in the file, for example:

code
code
LABEL
code

and in BTO, where you place the offsets/labels, you just type in the label name.

boingboingsplat
Posted on 09-25-07 12:34 AM Link | Quote | ID: 66293


Giant Koopa
[PREFSTRING:wonderful bounciness]
Level: 74

Posts: 45/1292
EXP: 3633647
Next: 19897

Since: 07-23-07
From: Michicola

Last post: 4842 days
Last view: 4804 days
Just one question.
What if we already have a Rom with original Block Tool blocks in it? Can we use this or will we have to use a new Rom?

____________________
 

mikeyk
Posted on 09-25-07 05:08 AM Link | Quote | ID: 66313


Paragoomba
Level: 22

Posts: 66/74
EXP: 49978
Next: 8372

Since: 06-11-07

Last post: 6047 days
Last view: 4123 days
Let me start by saying that I'm sooo happy this project hasn't died. I'm really pumped that we're able to see a release. Unfortunately, I just tried this out for the first time and wasn't able to get anything working. Here are the problems/suggestions/questions I had -- in order of decreasing importance.

* I tried inserting a .bin. I tried to insert an .asm. No luck in either case. A .bdt file showed up, but my ROM was left unmodified. Maybe I missed something obvious?

*In the database editor, the edit box doesn't update to show the value for the selected offset. If I enter 0 for "touched from above", the edit box will still say 0 no matter what other option I select. The correct values are written to blocks.bdb, but they don't show up in the GUI.

*If I double click on block, let's say $300, and select No Block. The entry for $300 disappears. Now if I double click on $301, the "Set Block" dialog opens but it says I am modifying block $300.

*In the database editor, the edit box where you enter a offset/label only allows 3 characters -- are longer labels not supported?

*Also, I think the database editor dialog should be made a little bit taller, so all offset options could be seen without a scrollbar.

I really think that BTO has enormous potential. I'm so excited to see this wipe the original block tool off the face of the earth.

Sukasa
Posted on 09-25-07 06:28 AM Link | Quote | ID: 66323


Red Birdo
Level: 92

Posts: 491/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
hm, how did I miss the most important point?

THIS PROGRAM DOES NOT YET EDIT ROMS

also don't worry, the database will get updated even if the results aren't shown. just click through the list and back and teh textbox'll update

The label thing is me forgetting to remove a MAXLEN after changing to use asm files.

I'll make it taller, then.

and about the block number issue... I'll fix that ASAP, then fix the listbox update issue.

blackhole89
Posted on 09-25-07 03:17 PM Link | Quote | ID: 66341


The Guardian
Moloch whose eyes are a thousand blind windows!
Level: 124

Posts: 623/4196
EXP: 21532527
Next: 304074

Since: 02-19-07
From: Ithaca, NY, US

Last post: 471 days
Last view: 84 days



Somebody on 2channel hinted that the JSR/JSL thing might become a bit of an annoyance when porting in blocks written for usage with other tools... you probably should add some kind of check that automatically replaces it when it finds a block that returns with JSR being inserted. (A bit of elementary control flow following might be necessary to implement that though...)

____________________



Sukasa
Posted on 09-25-07 03:25 PM Link | Quote | ID: 66344


Red Birdo
Level: 92

Posts: 492/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
Hm, I'll add it to the TODO list for features in v1.1

knuck
Posted on 09-25-07 04:16 PM Link | Quote | ID: 66347


Spiny
Level: 53

Posts: 80/586
EXP: 1110026
Next: 47093

Since: 07-22-07
From: BR

Last post: 4635 days
Last view: 4484 days
Erm, I'm just wondering... Technically, what's the difference between a block in BTO and a blocktool block? Can anyone show me the difference with pseudo code or whatever?

Sukasa
Posted on 09-25-07 05:08 PM Link | Quote | ID: 66349


Red Birdo
Level: 92

Posts: 493/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
blocktool omega blocks end with RTL, blocktool normal blocks with RTS.

Also Blocktool Omega will not have the slowdown that blocktool has, and is even faster that an blocktool installation that has only one block installed, even when the BTO install has 2000 blocks! (more blocks than anybody'll ever use, but I'm not lying!)

knuck
Posted on 09-25-07 05:37 PM Link | Quote | ID: 66350


Spiny
Level: 53

Posts: 81/586
EXP: 1110026
Next: 47093

Since: 07-22-07
From: BR

Last post: 4635 days
Last view: 4484 days
Posted by Sukasa
blocktool omega blocks end with RTL, blocktool normal blocks with RTS.

Also Blocktool Omega will not have the slowdown that blocktool has, and is even faster that an blocktool installation that has only one block installed, even when the BTO install has 2000 blocks! (more blocks than anybody'll ever use, but I'm not lying!)
Erm, I know about the no slowdown thing, but I'm asking technically, that happens due to what?
How did the old blocktool work? How does BTO work?

Sukasa
Posted on 09-25-07 05:43 PM (rev. 3 of 09-25-07 06:10 PM) Link | Quote | ID: 66351


Red Birdo
Level: 92

Posts: 494/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
The old blocktool loops through the blocks, looking to see if one matches the current block number. Also, the loop is ~30 lines long, with another ~40 lines before/after it. Tt's *really* bad (I disassembled it a while ago)

Blocktool Omega multiplies the current block number from SMW to get an array into a table, then checks to see if that particular block has custom code. If so, it reads an address and JSL's to it. If not, it returns without executing any more code.

Also fixed the disappearing block line issue. Turns out I'd managed to move a " to the end of a line, so list1.additem "(craxy text)", blocknum became "(craxy text), blocknum", and so the listbox defaulted it to the very bottom of the list.

EDIT: Also I misunderstood you MikeyK. I see what you mean, and I'm fixing that

EDIT2: fixed the bugs MikeyK brought up and lengthened the database dialog.

http://sukasa.kicks-ass.org/kasaos/BTO.exe

Just save over your current exe copies

mikeyk
Posted on 09-26-07 02:01 AM Link | Quote | ID: 66421


Paragoomba
Level: 22

Posts: 67/74
EXP: 49978
Next: 8372

Since: 06-11-07

Last post: 6047 days
Last view: 4123 days
Just tried the new version. Things are feeling MUCH, MUCH better now. You've got me really looking forward to this. I'll see if I can't modify my disassembler and write a script to convert all Block Tool's blocks to be BTO compatible.

How much have you done on the SNES side of things? What other things do you still need to accomplish before we can get this thing injecting code?

Can't wait.

Sukasa
Posted on 09-26-07 03:18 AM Link | Quote | ID: 66429


Red Birdo
Level: 92

Posts: 495/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
Lessee...

  • Rewrite AWOL SNES code
  • Configure ShellAndWait() routine
  • Write Actual inserter code
  • Write ASM/TRASM handler (ORG $xxxxxx etc.)
  • Test
  • Anything I've forgotten to mention here
  • Release version one, once I get some blocks for it

Remnic The Hedgehog
Posted on 09-26-07 05:57 PM Link | Quote | ID: 66476


Chasupa
Level: 56

Posts: 336/675
EXP: 1378981
Next: 19195

Since: 05-23-07
From: Kickapoo, Missouri

Last post: 5173 days
Last view: 5181 days

There should be a program which converts old .bin blocks into working format for BTO.

____________________


Smallhacker
Posted on 09-26-07 07:34 PM Link | Quote | ID: 66485


Panser
Swedish weirdo times eleven

Level: 42

Posts: 194/339
EXP: 494466
Next: 26896

Since: 02-19-07
From: Stockholm, Sweden

Last post: 5184 days
Last view: 5184 days
Posted by Remnic The Hedgehog
There should be a program which converts old .bin blocks into working format for BTO.


There should be a program on the site which converts stupidity into a working brain for the board.

Oh, and in case you didn't know (of course you didn't), that is waaaaaay harder than someone like you might expect.

____________________
SMW Central

Sukasa
Posted on 09-27-07 12:53 AM Link | Quote | ID: 66503


Red Birdo
Level: 92

Posts: 497/2112
EXP: 7689217
Next: 67720

Since: 02-19-07

Last post: 4447 days
Last view: 3219 days
2 Things.

1) I agree with you SH, but the personal flame wasn't really needed. And yes, it is *much* harder.

2) Remnic, please read the thread before you post:
Posted by mikeyk
I'll see if I can't modify my disassembler and write a script to convert all Block Tool's blocks to be BTO compatible.Can't wait.

Remnic The Hedgehog
Posted on 09-27-07 11:54 PM Link | Quote | ID: 66554


Chasupa
Level: 56

Posts: 340/675
EXP: 1378981
Next: 19195

Since: 05-23-07
From: Kickapoo, Missouri

Last post: 5173 days
Last view: 5181 days

Sorry about that.

As for Smalls... I'm not saying anything...

____________________

Pages: 1 2


Main - SMW Hacking - Blocktool Omega New thread | New reply

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.029 seconds. (341KB of memory used)
MySQL - queries: 124, rows: 164/165, time: 0.019 seconds.