Code: Select all
Procedure.d EnvolverAngulo(angle.d)
!fldpi
!fadd st0,st0; <- now i have 2*pi into st0
!fld qword[p.v_angle]
!fprem1
!fstp st1
ProcedureReturn
EndProcedure
Debug EnvolverAngulo(5)

Code: Select all
Procedure.d EnvolverAngulo(angle.d)
!fldpi
!fadd st0,st0; <- now i have 2*pi into st0
!fld qword[p.v_angle]
!fprem1
!fstp st1
ProcedureReturn
EndProcedure
Debug EnvolverAngulo(5)
Code: Select all
Procedure.d EnvolverAngulo(angle.d)
CompilerIf #PB_Compiler_Backend = #PB_Backend_C
!return remainder(v_angle, 6.2831853071795865);
CompilerElse
!fldpi
!fadd st0,st0; <- now i have 2*pi into st0
!fld qword[p.v_angle]
!fprem1
!fstp st1
ProcedureReturn
CompilerEndIf
EndProcedure
Debug EnvolverAngulo(5)
Code: Select all
; Fasm x86
format MS COFF
;--------------------------------------------------------------------------------
; Parameter
;--------------------------------------------------------------------------------
; angle (Double)
angle equ esp + 4
;////////////////////////////////////////////////////////////////////////////////
;// Section code EnvolverAngulo //
;////////////////////////////////////////////////////////////////////////////////
public _PB_EnvolverAngulo@8
section '.text' code readable executable
_PB_EnvolverAngulo@8:
FLDPI
FADD st0, st0 ; <- now i have 2*pi into st0
FLD qword[angle]
FPREM1
FSTP st1
RET 8
Code: Select all
; Langage utilisé pour coder la librairie ASM ou C
C
; Nombre de Dll windows utilisées par la lib
0
; Type de librairie
LIB
; Nombre de librairies PureBasic/Utilisateur utilisé par la librairie
0
; Nom du fichier d'aide de la libraire
Psy_2.chm
; Fonction unique créée
EnvolverAngulo, Double, ( angle.d ) -
Double | StdCall