Hello!
I'll make available to this community a new OOP approach called ObjAsm32.
You can reach all source codes, docs and examples at http:\\ObjAsm32.Tripod.com.
I was continuously working on it, but I think it is grown to maturity to be published in it?s first version.
You can also find some objects ready to be used on the object repository!

Note: check the examples...

Have fun!
Posted on 2003-07-28 04:06:30 by Biterider
Hello!
I?ll make available to this community a new OOP approach called ObjAsm32.
You can find all source codes, docs and examples at http:\\ObjAsm32.Tripod.com.
I?m continuously working on it, but I think that this model has grown to maturity to be published in it?s first version.
Also available are some objects ready to use!

Note check out the documentation and the examples...

Have fun!
Posted on 2003-07-28 04:24:27 by Biterider
Biterider: very nice :alright:
thanks for sharing. also the object repository it is very helpfull.

looking forward for next chapters.

it would be nice to have also all chapters (when are finished) in one .chm file.

thanks
Posted on 2003-07-28 05:11:17 by TBD
SEH.zip seemed down.. Do you still have it? It tickles my interest bone ;)
Posted on 2003-07-28 14:27:45 by FearHQ
Nice site, and your work seem well organized. I havent really studied what your have done yet, but the source looks good. (I liked the fact your follow a similar convention as Thomas and I had dreamed for macro names ($, SetObject/ReleaseObject, etc.)

However, maybe I missed something, i didnt download the entire page, but i downloaded the Objects and Strings. Neither had an example? What is a good *simple* starting example to download. I d/l the Strings file cause i figured it would be a simple example to follow, but i see its more macros...

BTW: I think its fantastic that we have *another* OOP'r with us. Keep it going!

:NaN:
Posted on 2003-07-28 18:04:08 by NaN
SEH.zip is now there. I forgot to upload the file!
Posted on 2003-07-28 23:53:01 by Biterider
I adapted ObjAsm32 syntax to your name convention because I think it makes sense!
If you are looking for a start example and documentation, see the documentation page (Link on the top of the Homepage). For each chapter I wrote a little example. Currently I'm writing the rest of the docs, so please be patient...
Strings.inc is intended to handle ANSI strings and the procedures follow the rules of Pascal/Delphi strings.
Posted on 2003-07-29 00:28:07 by Biterider
The DBase object is now ready and an example is posted in the Docs page to download!

Enjoy...
Posted on 2003-07-31 10:31:08 by Biterider
Biterider, excellent work and website ! :alright:

I will start studying it.

btw. a feedback: the link for download your CRC.zip is wrong.


Amazing! what a clean implementation of dbase object.
another feedback: the example for dbase object does not run. (NULL ptr if file not found -> hardcoded paths to dbf and ndx files)
Posted on 2003-08-26 04:30:41 by pelaillo
Hello!
I've recently launched a revised version of some ObjAsm32 objects and some new objects like WinPrimer, MsgInterceptor, XMenu and MdiApp. These objects can be found at http://biterider.tripod.com in the repository section. An example of these new objects can also be downloaded from the documentation section, chapter 6. I'll try to finish the corresponding documentation as soon as possible...
I'll be glad about some feedback...

Enjoy,

Biterider
Posted on 2003-09-26 10:45:37 by Biterider
dear biterider,

I hope i'm not bugging you but i really want you to think about this: Can you write for the 32-bit x86 ASM book i and some others are trying to write. I've just added a volume on OOP in ASM. You might wanna have a look at the wiki web. Here it is:

http://www.asmcommunity.net/board/phpwiki/index.php/HomePage

Regards,
Art
Posted on 2003-10-30 04:34:14 by art_sands
Hello!
I've launched ObjAsm32 version 1.1 together with some new objects. Take a look at chapter 7 at http://ObjAsm32.Tripod.com in the Documentation section. An example is also posted...
Feedback will be appreciated...

Enjoy,

Biterider
Posted on 2003-11-10 07:37:16 by Biterider
Here is an example using my implementation. The source is not
quite ready for publishing yet. I just thought I'd post this 'little ditty' to see if what people think. The source file included is a complete program which assembles and runs on my system.
Posted on 2003-11-10 08:31:57 by gfalen
For what its worth, I give this OOP implementation a 5-star rating.. its the best I have come across in terms of (1) syntax requirments, (2) ability, (3) memory organization, (4) easily understood.

Im sorry it has taken me this long to finally give it my full attention, but now that i found the time to do so, I was able to fully understand the model within 2 hours and get it going...

Very nice work BiteRider!
:alright: :alright: :alright: :alright: :alright:
:NaN:
Posted on 2003-11-22 16:32:09 by NaN
I found a bug in the BandFrame object. It affects your demos #3, #5,#6,#7. Im not 100% what the bug is at the moment, but I do absolutely know where it crashes:

Specifically to your Example 06, WinControls.inc at line 688 has:
; ????????????????????????????????????????????????????????????????????????????????????????????

; Method: BandFrame_WndProc
; Purpose: Processing of window messages. Befor invoking it, the window must be subclassed.
; Arguments: Arg1: Window handle.
; Arg2: Message identifier.
; Arg3: First message parameter.
; Arg3: Second message parameter.
; Return: This value is the result of the message processing and depends on the message.

BandFrame_WndProc proc hWnd:Handle, uMsg:dword, wParam:dword, lParam:dword
GetSubclassingInst BandFrame
ObjectCall Toolbar, Dispatch, eax, hWnd, uMsg, wParam, lParam
ret
BandFrame_WndProc endp

From debugging, the example passes through this routine for the BandFrame object *alot* and 99.99% of the time it macro routine "GetSubClassingInst" works without a hitch, however, when you drag the rebar section off the toolbar stip into the client area, and then try to re-add this toolbar window into the tool bar the return from the marco call to get the sub routine via the api "GetProc" returns eax = NULL. And since there is no error checking the program crashes when the ObjectCall is taken.

I do not exactly know why the return is NULL on this specific case (as it isnt 99% of the time for the same Text Label ~ but my best guess is when you create a toolbar window from a previous toolbar rebar, the windows os reassigns new handles for the subclassing. As such, the call "GetProc" returns NULL cause the previous handle is no longer valid... Again, only a shot in the dark.

I hope this helps, i would be interested in your thoughts on the topic.
Regards,
:NaN:
Posted on 2003-11-23 00:28:34 by NaN
Hello NaN
Thanks for your report!
I?ve found the bug. It occurs while processing the WM_NCDESTROY message. I forgot to unsubclass the control in the Done destructor? I redefine the Done method including the Unsubclass macro. The new file is now corrected and uploaded.

Regards?

Biterider
Posted on 2003-11-23 10:57:47 by Biterider

Hello NaN
Thanks for your report!
I?ve found the bug. It occurs while processing the WM_NCDESTROY message. I forgot to unsubclass the control in the Done destructor? I redefine the Done method including the Unsubclass macro. The new file is now corrected and uploaded.

Regards?

Biterider


The done destructor of which object? (just currious cause i cant seem to track down one for the BandFrame object).
Posted on 2003-11-23 23:18:13 by NaN
Hello NaN
I mean the BandFrame Done destructor. Now, it looks like

BandFrame_Done proc uses esi Self:Pointer
SetObject esi, BandFrame
Unsubclass BandFrame
AncestorCall BandFrame, Done, esi
ReleaseObject esi
ret
BandFrame_Done endp

Regards,

Biterider

PS: The best way to see what messages are arriving to a window is inserting the following lines at the beginning of the XXX_WndProc or XXX_Dispatch method:

invoke GetWndMsgStr, uMsg
PrintStringByAddr eax

This lines have no effect on the rest of the code!
Posted on 2003-11-24 00:48:06 by Biterider
Hello!
I've uploaded a new GifPlayer object available at http://ObjAsm32.tripod.com in the repository section. Please read the licence remark on the header of the GIFs.inc file. I also include a little demo on chapter 7 included in Dialogs.inc. It is a password dialog. The corresponding password for this chapter is "hello".

Enjoy,

Biterider
Posted on 2003-11-24 03:19:21 by Biterider
Hi, BiteRider. :)
I just stopped by your site and saw you've updated most files since the last time I visited it. So I thought that instead of having to download a bunch of small files one by one, it would be so much easier if there was a single ZIP file to make all downloads in one.

So, if it's not much trouble... ;) :grin:
Posted on 2003-11-25 18:46:58 by QvasiModo