Jul 18, 2010 at 11:41 PM
Join Date: Dec 26, 2007
Location: Lithuania
Posts: 1946
Noxid said:also Face.pbm can extend at least far enough down to be ridiculously large so that should not be a problem.
Are you implying I can have 203 face pics?
Noxid said:also Face.pbm can extend at least far enough down to be ridiculously large so that should not be a problem.
WoodenRat said:Are you implying I can have 203 face pics?
Yes you can extend tilesets, but again, keep the width the same.adark said:You can extend tilesets and the facepics?
Damnit, I need to pay more attention to this forum.
Also, could somebody PLEASE help me change the icon?
And find a complete list of all the entities in cave story and what they are called...
Landonpeanut said:I have an assembly concept that I've been having trouble grasping for some reason: CDQ. I've read the definition (The cdq instruction sign extends the 32 bit value in eax to 64 bits and places the result in edx:eax by copying bit 31 of eax throughout bits 0..31 of edx) over and over, but I've never been able understand it. Help please?
adark said:The CE I have has no entities named, excluding the later ones with random characters, and it also doesn't have any TSC notes built in either.
New problem:
How do I edit what Flag needs to be set for entitiy flags 4000/800 to work?
Landonpeanut said:It uses no IDIV after using the CDQ, instead it uses a SUB, and it's just a bit confusing.
00406625 MOV DWORD PTR DS:[EDX+18],EAX ;Change X velocity to EAX
00406628 PUSH 4 ;Maximum #.
0040662A PUSH -4 ;Minimum #.
0040662C CALL 0040F350 ;Call the Random # generator function (stores into EAX)
00406631 ADD ESP,8 ;Fix the Stack.
00406634 SHL EAX,9 ;Multiply EAX by 2^9
00406637 CDQ ;Extends the 32 bit value in eax to 64 bits and places the result in edx:eax
00406638 SUB EAX,EDX ;Subtracts EDX from EAX
0040663A SAR EAX,1 ;Divide EAX bu 2^1
0040663C MOV ECX,DWORD PTR SS:[EBP+8] ;Store the Weapon pointer into ECX
0040663F MOV DWORD PTR DS:[ECX+1C],EAX ;Change Y velocity to EAX
Landonpeanut said:Yep, it does.
Here you go:
Code:00406625 MOV DWORD PTR DS:[EDX+18],EAX ;Change X velocity to EAX 00406628 PUSH 4 ;Maximum #. 0040662A PUSH -4 ;Minimum #. 0040662C CALL 0040F350 ;Call the Random # generator function (stores into EAX) 00406631 ADD ESP,8 ;Fix the Stack. 00406634 SHL EAX,9 ;Multiply EAX by 2^9 00406637 CDQ ;Extends the 32 bit value in eax to 64 bits and places the result in edx:eax 00406638 SUB EAX,EDX ;Subtracts EDX from EAX 0040663A SAR EAX,1 ;Divide EAX bu 2^1 0040663C MOV ECX,DWORD PTR SS:[EBP+8] ;Store the Weapon pointer into ECX 0040663F MOV DWORD PTR DS:[ECX+1C],EAX ;Change Y velocity to EAX
It's part of the Bubbler lvl. 3 Launch code that I was looking at a while back....
Landonpeanut said:Yep, it does.
Here you go:
Code:00406625 MOV DWORD PTR DS:[EDX+18],EAX ;Change X velocity to EAX 00406628 PUSH 4 ;Maximum #. 0040662A PUSH -4 ;Minimum #. 0040662C CALL 0040F350 ;Call the Random # generator function (stores into EAX) 00406631 ADD ESP,8 ;Fix the Stack. 00406634 SHL EAX,9 ;Multiply EAX by 2^9 00406637 CDQ ;Extends the 32 bit value in eax to 64 bits and places the result in edx:eax 00406638 SUB EAX,EDX ;Subtracts EDX from EAX 0040663A SAR EAX,1 ;Divide EAX bu 2^1 0040663C MOV ECX,DWORD PTR SS:[EBP+8] ;Store the Weapon pointer into ECX 0040663F MOV DWORD PTR DS:[ECX+1C],EAX ;Change Y velocity to EAX
It's part of the Bubbler lvl. 3 Launch code that I was looking at a while back....
PUSH 4
PUSH -4
CALL 0040F350 ;put random # into EAX
ADD ESP,8
SHL EAX,8 ;multiply EAX by 2^8
MOV ECX,DWORD PTR SS:[EBP+8]
MOV DWORD PTR DS:[ECX+1C],EAX ;Change Y velocity to EAX
00406628 PUSH 4
0040662A PUSH -4
0040662C CALL 0040F350
00406631 ADD ESP,8
00406634 SHL EAX,9
00406637 CDQ
00406638 SUB EAX,EDX
0040663A SAR EAX,1
0040663C MOV ECX,DWORD PTR SS:[EBP+8]
0040663F MOV DWORD PTR DS:[ECX+1C],EAX ;Change Y velocity to EAX
Landonpeanut said:No noticeable change in behavior. Interesting.
Miles_Valentine said:I was tryign to make a new background for a throne room i was making, but it isnt working.I saved it as bkcast.pbm in the data folder. Cave editor displays it perfectly, but when i try to actually play it, the middle ground and foreground is displayed only. What am i doing wrong?
(Note that the files dimensions are multiples of 16)