logo
 drop

Main

Community

Submissions

Help

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Mauron

Pages: [1] 2 3 4 5 6 ... 15
1
Programming / Re: [help] C# MegaMan3TextEditor
« on: April 22, 2017, 11:22:25 pm »
If I'm reading this right, he specifically wants to change the user interface of the pictured program, with access to the source code.

Is my interpretation correct?

2
Site Talk / Re: Google Chrome bug with bulleted lists on front page
« on: April 15, 2017, 07:13:08 pm »
It also seems to only occur on the first news item, at least in my testing. Fiddling with the inspector sometimes causes it to go away, even without toggling CSS rules.

It sounds like a Google issue to me.

3
NOPs are typically used when waiting for something else to process. A good example is multiplication.

Code: [Select]
lda #$02
sta $4202 // 00:4202 is the first value to multiply with
lda #$03
sta $4203 // 00:4203 is the second value
nop // The result won't be ready yet
nop // So we wait
rep #$20 // Set A to 16-bits.
lda $4216 // 00:4216 will have the result (in this case, 6) now.

Sometimes there will be things to do that can fill in the necessary delay, such as the rep #$20 above.

NOPs are also useful when debugging, as a way to comment out instructions.

4
Hi-Tech Beta 17!

- Fixed label issues with increment counter and decrement counter
- Unknown 21 decoded as conditional return from super command
- Play Weapon Sound variants decoded as regular/ranged and critical/melee.
- Play Weapon Sound (3-bytes) display error fixed.
- Fixed a glitch where some techs would be overwritten due to a size calculation error.

5
Alright so right now when I need to do ASM edits I basically convert 65816 to hex and then edit the hex data through a hex editor. I've seen a couple programs, notably Asar and Xkas, that are asm utilities. I use currently asmdev to view translated opcodes, but for example I can't really do very much with the program like if I wanted to do BNE jumploc, I wouldn't know how to do that since it's ASCII characters not hex values like I typically use.

You can use labels with your commands, instead of calculating the distance of the branch or location of a jump.
Code: [Select]
lda $80
cmp #$01
bne dontjump
jsr morecode
dontjump:
rts
morecode:
// another routine
rts

Quote
For some reason also it uses "projects". Like if I edit a few lines then save it saves the files as *.bin rather than the rom directly so I'm not exactly sure how to use them, or get an emulator to run any changes I've made.
The file you specify with -o can be an existing file, and you can use the org directive to specify where in the ROM to output the code to.
Quote
It looks like some people are able to save .asm files then patch the games this way. I really like just using IPS/BPS files to patch a rom for rom hacks rather than using a program I haven't heard of. Also, those programs look like DOS based. Are there any asm programs such as xkas/asar that have a GUI?
Most of what you need to do is write a text file (that's all the .asm file really is) that contains your new code. The command line just specifies input and output files. A GUI is possible, but there wouldn't be much to it.

Quote
One more thing on memory management. So I was working on editing a rom recently where I needed to add several instructions. Before I was lucky I found several NOP instructions in the rom bank and just overwrote those with a subroutine. Unfortunately now for this new bug fix I need some more space and searching through the rom I found a couple NOP instructions but they were very far spread out so I couldn't really work with them. I tried expanding the rom. I was just hoping that adding an extra 500kb would have hundreds of NOPs somewhere, but I think the bank I was using was completely untouched. How do people manage space limitation?
NOPs are typically included when the code is waiting on something else, for example, the multiplication or division registers. You'll generally want to jsr/jsl to free space (usually continues blocks of 00 or FF). I usually end up moving an instruction or two into the new area, and replacing the old instruction with a jump.

Quote
I just need to include an if/else statement. It's so difficult working with assembly where you get 3 variables max. So ridiculous. Could you imagine trying to write a C++ program, or a webpage where your boss or teacher was like, "ok need you to create the next Amazon, or program Skyrim but it's going to be hard because you can only use 4 registers. Now begin!"
Registers are used for things you're immediately working with - once you've finished with those values, you can either discard them or store them to RAM.[/code]

6
Site Talk / Re: Mouse wheel not working on boards
« on: April 07, 2017, 01:03:09 am »
I've had issues that were theme and section specific, but it sounds like your issues are computer related.

I did check it under TechnoFatal, and didn't have issues on my end, but I think I'll keep the theme for a while.

7
Site Talk / Re: Mouse wheel not working on boards
« on: April 06, 2017, 07:12:53 pm »
What theme are you using?

8
Hi-Tech Beta 16!

- Fixed issue with set palette command.
- Wait for section/subsection redecoded as wait for counter 1C/1D
- Increment section/subsection redecoded as wait for counter 1C/1D
- Store Coordinates of object redecoded as store coordinates of target.
- Fixed a bug where Play Sound (3-Bytes) was loading as Unknown 2-Bytes.
- Set section/subsection redecoded as set counter 1C/1D
- Decrement section/subection redecoded as decrement counter 1C/1D
- Decrement counter 1C/1D now listed properly in the editor.
- Unknown 37 decoded as decrement counter #.
- Load Layer 3 Packet redecoded as increment counter #.
- Displace relative redecoded as increase counter # by value.
- Increase subsection by x has been redecoded as increase counter 1C by value.
- Displace Absolute redecoded as set counter.
- Unknown 41 decoded as Copy Counter.
- Unknown 42 decoded as Copy Counter 1C.
- Unknown 49 decoded as Add to or subtract from counter.
- Unknowns 4A and 4D decoded as swap counters 1C and 1D.
- Unknown 4E decoded as swap counters 1C and 1E.
- Unknown 4F decoded as swap counters 1C and 1F.
- Fixed issue with tech requirement list not updating properly.
- Fixed issue with modifying enemy attacks when reloading.
- Fixed spacing issue with enemy attack names when enemies reached the maximum name length
- Fixed spacing issue with enemy tech and attack effect header 0xFF edit error message.

9
Site Talk / Re: Broken SSL cert
« on: March 29, 2017, 01:24:23 am »
I'm not seeing any change.

10
Site Talk / Re: Broken SSL cert
« on: March 28, 2017, 04:32:04 am »
I experience the same issues with the Bonsai theme.

11
Hi-Tech Beta 14 See Beta 15 below.

The biggest change in this release is MP costs. The last feature needed is now Super Command expansion.

Changes:
- Changed default settings of HiTech.ini to correct end points.
- Fixed creation of HiTech.ini spelling
- Fixed issue with saving player attack effect headers
- Added support for editing MP costs. They are loaded in the relevant effect header.

Note that this version will replace any existing HiTech.ini files - if you had modified yours (I don't think anyone has a project that required this functionality), backup your settings first.

A new beta in the same post?

Hi-Tech Beta 15!

- Fixed a bug with saving techs that used an animation index that did not match the tech index
- Fixed a bug with saving techs that were not being relocated.
- Removed some unnecessary and messy code relating to loading techs.
- MP costs now respect the hex mode setting.

12
Personal Projects / Re: Chrono trigger plus
« on: February 09, 2017, 07:59:09 pm »
I find human Glenn licking people an odd visual.

13
Personal Projects / Re: Chrono trigger plus
« on: February 09, 2017, 02:20:31 pm »
And although I don't have a clue on the inner workings of Chrono Trigger, perhaps there's a way to have both Frog and Glenn share the same spot in the lineup? Like say, have a bit of code that runs on two flags dedicated to the two characters: When flag X is set it looks for Frog's graphical data, if Flag Y is set it looks for Glenn's graphical data.

I've looked into the possibility before, and it becomes complex if you want to handle more than just the graphics, such as new techs for Glenn.

14
Newcomer's Board / Re: Padding
« on: February 01, 2017, 08:29:05 pm »
Window -> Custom Data. You can set the start and end offset of space you don't want Temporal Flux to write to. You can try adding sections of this in the known free space areas to see if Temporal Flux behaves properly.

I don't know the details of Temporal Flux's memory management, but it has a list of known space it starts with, which is most things labeled --- or JUNK in Geiger's offsets, and it can overwrite non-00/FF sections. The problem you've described to me involves Temporal Flux overwriting a known code section - something that is already non-00/FF.

15
Newcomer's Board / Re: Padding
« on: February 01, 2017, 03:07:12 pm »
From what I've seen of your issue, it seems more like Temporal Flux is miscalculating data size, which causes it to go into used space.

You might be able to use the custom data feature to block off the original free space, but that doesn't necessarily address the issue you're having.

16
Personal Projects / Re: Chrono Trigger MSU-1 (with FMV's)
« on: December 26, 2016, 01:30:53 am »
Temporal Flux grabs space as needed from the list of known free space and garbage data. The first thing it tries is always 0x01FDD3, junk code in the US ROM. Any expansion of events will require moving that location's events.

The Custom Data option within Temporal Flux should let you protect code from being used as free space.

17
Personal Projects / Re: Chrono Trigger MSU-1 (with FMV's)
« on: December 25, 2016, 01:02:30 am »
Will this eventually include the extra content from the DS or is that beyond the scope of the project? Because that would be perfect, and make this like the ultimate Chrono Trigger modification.

I don't think you'd be able to add enough resources to add the DS content without altering events, location loading, battle, etc for two byte indexes.

18
I'm not entirely sure how MemCpy88 works - I tried fiddling a little, but didn't have much luck.

Apart from adding permanent protect status, I can't see a way to reduce damage taken from physical attacks, and I'm not sure that would help in this case.

19
You can't give an overworld tile a unique property, because Temporal Flux doesn't change how the game handles things, and Chrono Trigger doesn't allow that.

What you need is a different Layer 2 tile - The bottom left tile in the tiles panel has the top two quads as exits, while the bottom two quads are ethereal. Set explicit paste to Layer 2 before laying the tile (Normal never works for me).

20
Newcomer's Board / Re: Townedit for DW1 will not work
« on: November 08, 2016, 03:52:03 am »
Is your original file name using a proper 8.3 filename? Up to 8 characters, a period, and an up to three character extension, no spaces. Probably some other rules I forgot.

Pages: [1] 2 3 4 5 6 ... 15