EnglishРусский  

   ..

   compl.g

   lexasm.g

   lexasm.lex

   main.g

   readme.txt

   test.asm

Ads

Perfect Automation tool
All-In-One: Script editor, Launcher, Scheduler, Keyboard & Mouse Recorder. Try now!

CreateInstall
Freeware and commercial installers.

Cell Phone Batteries
Batteries Plus offers batteries for laptop, camcorder, cell phone, camera.

Gentee needs your help!
How to advertise with us
 
laptop battery

 1 /******************************************************************************
 2 *
 3 * Copyright (C) 2006, The Gentee Group. All rights reserved. 
 4 * This file is part of the Gentee open source project - http://www.gentee.com. 
 5 * 
 6 * THIS FILE IS PROVIDED UNDER THE TERMS OF THE GENTEE LICENSE ("AGREEMENT"). 
 7 * ANY USE, REPRODUCTION OR DISTRIBUTION OF THIS FILE CONSTITUTES RECIPIENTS 
 8 * ACCEPTANCE OF THE AGREEMENT.
 9 *
10 * ID: main 18.10.06 0.0.A.
11 *
12 * Author: Alexey Krivonogov ( gentee )
13 *
14 * Summary: Example of the using gentee analizer
15 *
16 ******************************************************************************/
17 
18 include
19 {
20    $"..\..\lib\lex\lex.g"
21    "lexasm.g"
22 }
23 
24 func main<main>
25 {
26    str     in
27    uint    i off lex
28    arrout  out
29    uint    igt   // The current gtitem
30    
31    out.isize = sizeof( lexitem )
32    
33    in.read( "test.asm" )
34    lex = lex_init( 0, lexgasm.ptr())
35    gentee_lex( in->buf, lex, out )
36 //   start = in.ptr()
37    off = out.data.ptr()
38  //  igt as this 
39    
40    fornum i, *out
41    {
42       uint  li 
43       
44       li as off->lexitem
45       if li.ltype != $ASM_LINE 
46       {
47          print("type=\( hex2stru("", li.ltype )) pos = \(li.pos) len=\(li.len ) 0x\(hex2stru("", li.value )) \n")
48       }
49 
50       off += sizeof( lexitem )            
51    }
52    print("--------------------------\n") 
53    off = out.data.ptr()
54    fornum i = 0, *out
55    {
56       uint  li 
57       
58       li as off->lexitem
59       
60 //      if li.ltype != $ASM_UNKNOWN
61       {
62          str stemp 
63 
64          stemp.substr( in, li.pos, li.len )
65          print( " "+= stemp )
66       }
67       off += sizeof( lexitem )            
68    }
69    lex_delete( lex ) 
70    print("--------------------------\n") 
71    congetch("Press any key...")
72 }
Edit