After a week of fighting, I have my application converted and 60% operational
in 32bit VB5 and PB6.. Though I noticed it is a great deal slower
than the 16bit counterpart..Why?
I also noticed that there are errors in reading UDT's with integer
variables.. I have this UDT that I am reading from a .DAT file..
Type CharType
Hnd As STRING * 40
Icon As String * 20
newIcon As String * 20
Script As String * 40
AI_Status as Integer
Mobility as Integer
Named As String * 40
Status As Statustype
expr as Long
Class as Integer
Race as Integer
gold as Long
Skills(30) as Integer
Armor(4) As obj
Weapons(10) As obj
Equipment(30) As obj
Spells(50) As obj
Hidden(100) As obj
End Type
When this record is read in 32bit The Class=1
and the Race=1 for a specific record. The 32bit version read the
values as 1 and 75 respectively.. I also noticed
that the expr value has some random number in it. Like 234533..This is horrible!
I read the record from this PB .DLL routine..
SUB ReadCharacter ALIAS "ReadCharacter" (BYVAL Rec%, file$, vbObject AS CharType) EXPORT
DIM fl%
ON ERROR RESUME NEXT
IF Rec% > 0 THEN
fl% = FREEFILE
OPEN file$ FOR RANDOM ACCESS READ AS fl% LEN = LEN(CurrentPlayer)
GET #fl%, Rec%, CurrentPlayer
CLOSE fl%
END IF
vbObject = CurrentPlayer
END SUB
I rechecked the datatype to make sure everthing was Ok.. (it was)
I reverted back to the 16bit version of the application to
see if the UDT loaded correctly.. (it did)
When programming in 32bit, does it mean that I can't use INTEGERS at all?
Should I global search and replace all % with ! and INTEGER with
LONG?
Right now the 32bit platform seems like its still in beta testing
and really not suitable for developing on..(under windows) I honestly haven't seen
any Windows applications (32bit) that were 100% stable..
And one last question.. The 32bit platform is really a software integration
correct? Meaning the physical computer chip is managing 16bit?
Because if I drop to ASM and began to load addresses the chip
will not allow me to load a 32bit value correct? I am unclear of
what 32bit really means.. for years people have said that it meant
"speed" but from my experiences it doesn't..
------------------
Explorations v3.0 RPG Development System
http://www.explore-rpg.com
in 32bit VB5 and PB6.. Though I noticed it is a great deal slower
than the 16bit counterpart..Why?
I also noticed that there are errors in reading UDT's with integer
variables.. I have this UDT that I am reading from a .DAT file..
Type CharType
Hnd As STRING * 40
Icon As String * 20
newIcon As String * 20
Script As String * 40
AI_Status as Integer
Mobility as Integer
Named As String * 40
Status As Statustype
expr as Long
Class as Integer
Race as Integer
gold as Long
Skills(30) as Integer
Armor(4) As obj
Weapons(10) As obj
Equipment(30) As obj
Spells(50) As obj
Hidden(100) As obj
End Type
When this record is read in 32bit The Class=1
and the Race=1 for a specific record. The 32bit version read the
values as 1 and 75 respectively.. I also noticed
that the expr value has some random number in it. Like 234533..This is horrible!
I read the record from this PB .DLL routine..
SUB ReadCharacter ALIAS "ReadCharacter" (BYVAL Rec%, file$, vbObject AS CharType) EXPORT
DIM fl%
ON ERROR RESUME NEXT
IF Rec% > 0 THEN
fl% = FREEFILE
OPEN file$ FOR RANDOM ACCESS READ AS fl% LEN = LEN(CurrentPlayer)
GET #fl%, Rec%, CurrentPlayer
CLOSE fl%
END IF
vbObject = CurrentPlayer
END SUB
I rechecked the datatype to make sure everthing was Ok.. (it was)
I reverted back to the 16bit version of the application to
see if the UDT loaded correctly.. (it did)
When programming in 32bit, does it mean that I can't use INTEGERS at all?
Should I global search and replace all % with ! and INTEGER with
LONG?
Right now the 32bit platform seems like its still in beta testing
and really not suitable for developing on..(under windows) I honestly haven't seen
any Windows applications (32bit) that were 100% stable..
And one last question.. The 32bit platform is really a software integration
correct? Meaning the physical computer chip is managing 16bit?
Because if I drop to ASM and began to load addresses the chip
will not allow me to load a 32bit value correct? I am unclear of
what 32bit really means.. for years people have said that it meant
"speed" but from my experiences it doesn't..
------------------
Explorations v3.0 RPG Development System
http://www.explore-rpg.com
Comment