flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
DJ Mauretto 03 Jun 2008, 14:49
Hello
![]() Here there is a simple example of 3D cube rotation with Opengl library. ![]() Have fun! _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
bitRAKE 03 Jun 2008, 15:48
Reading the code is almost like looking at the disassembly.
![]() |
|||
![]() |
|
DJ Mauretto 03 Jun 2008, 15:53
![]() ![]() ![]() I'm sorry , i like low level programming , i don't know High level Windows programming. Stop to INVOKE please ![]() _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
Madis731 03 Jun 2008, 18:49
Code:
section ".code" code readable
Doesn't look very "readable" to me ![]() ![]() ![]() |
|||
![]() |
|
DJ Mauretto 03 Jun 2008, 19:40
Ok I'll try to optimise the code and the source
![]() Now i'm tired , maybe tomorrow ( i'll find my way ![]() _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
DJ Mauretto 04 Jun 2008, 10:54
Quote: So, I'm not really being critical, but rather wondering if there is a hidden intent. No one hidden intent , it's only my coding style , i like pure assembly , I find myself more comfortable with numbers, i'm not expert in windows or opengl programming , this is only a ordinary example. ![]() _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
asmfan 04 Jun 2008, 11:20
I dislike drawing time synchronization - cube rotates too fast. Also too much uppercase =)
|
|||
![]() |
|
DJ Mauretto 04 Jun 2008, 12:15
Quote: I dislike drawing time synchronization - cube rotates too fast There is no time sync , to adjust speed ( experimental way) in data section decrement this: Code: ;--------------------- ; Angle Increment ;-------------------- IncAngX DD 0.3 ; X speed rotate IncAngY DD 0.8 ; Y speed rotate IncAngZ DD -1.0 ; Z speed rotate Quote: Also too much uppercase =) I dislike lowercase ![]() _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
Raedwulf 04 Jun 2008, 15:56
Yea, just most fasmers use lowercase while MASMers use uppercase.
|
|||
![]() |
|
DJ Mauretto 04 Jun 2008, 16:51
I tried to make the source more readable, I hope enough
![]() _________________ Nil Volentibus Arduum ![]() Last edited by DJ Mauretto on 18 Nov 2011, 20:25; edited 1 time in total |
|||
![]() |
|
bitRAKE 04 Jun 2008, 19:51
Should message processing always skip scene drawing, or should drawing take place before/after message processing? Could several messages force a noticeable delay?
|
|||
![]() |
|
asmcoder 04 Jun 2008, 21:01
[content deleted]
Last edited by asmcoder on 14 Aug 2009, 14:58; edited 1 time in total |
|||
![]() |
|
DJ Mauretto 05 Jun 2008, 09:23
Hello
![]() First of all i repeat that i'm not an expert windows programming, I am not a programmer, I just fun, I like pure assembly ,Hardware and System. Quote: Should message processing always skip scene drawing, or should drawing take place before/after message processing? Could several messages force a noticeable delay? Yes,let you optimise my example,Windows API are boring,the real programmer don't write code with API. ![]() Quote: i dont understand few things... Where ? Post code section. Quote: is that wrong? Why? When lpModuleName is NULL ,this call give me the module handle of caller. Quote: why you pass it to createwindowexa? i call it with 0, and its ok I don't know,I have always done this way, I never detailed planning Windows API Quote:
Quote: and why you destroy eax? it can be -1, 0, or >0 Where ? Post code section Quote:
I don't know I have always done in this way,let you optimise. _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
bitRAKE 05 Jun 2008, 22:38
DJ Mauretto wrote: Yes,let you optimise my example,Windows API are boring,the real programmer don't write code with API. Code: @LoopMessage: CALL Draw PUSH 1 ; wRemoveMsg = PM_REMOVE PUSH 0 ; wMsgFilterMax PUSH 0 ; wMsgFilterMin PUSH 0 ; hWnd PUSH OFFSET Mes ; lpMsg CALL [PeekMessageA] ; Read Message from queue OR EAX,EAX ; Message ? JZ @LoopMessage CMP [message],12H ; WM_QUIT ? JZ @F PUSH OFFSET Mes ; lpMsg , Address Message Structure CALL [DispatchMessageA] ; Send Message JMP @LoopMessage ![]() For fun I opened several windows with spinning boxes. ![]() |
|||
![]() |
|
DJ Mauretto 06 Jun 2008, 07:54
Good test bitRAKE
![]() Unfortunately windows API are as a closed box,I can not write code if I can not control every single statement, which is why I'm not worried examples that use prepackaged libraries. If you want to see something dynamically optimized ![]() _________________ Nil Volentibus Arduum ![]() |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.