All pastes #708163 Raw Edit

blez

public text v1 · immutable
#708163 ·published 2007-09-23 16:53 UTC
rendered paste body
include 'hll.inc'

./*
  the beer source: example of hll macros used in fasm
  - multiline comments
  - var definition
  - hll functions including strings
  - new imports
  - smarter if, switch
  - assemly listing

  by blez
.*/


type gui
enable listing

 extern mciSendStringA:invoke

 string sName = 'MyApplication'
 MessageBoxA(0,'Do you need additional place for the beer?',sName,MB_ICONQUESTION+MB_YESNO)

 .if eax = IDYES
     mciSendStringA('open cdaudio',0,0,0)
     mciSendStringA('set cdaudio door open',0,0,0)
     mciSendStringA('close cdaudio',0,0,0)
 .else
     MessageBoxA(0,'Well ok then..',sName,MB_ICONINFORMATION+MB_OK)
 .endif

 ExitProcess(0)

imports
 libs kernel32,user32,winmm
 from kernel32,ExitProcess
 from user32,MessageBoxA
 from winmm,mciSendStringA