about summary refs log blame commit diff stats
path: root/subx/examples/ex1.subx
blob: 0aca40f8aa2b7772dc9499661c06902c14ffa575 (plain) (tree)
1
2
3
4
5
6
7
8
9
                                                                                       
                 
 
                                   

                                                          


                  
 
                  
 
      
                   
                                     
                            
                     
 

                  
                            
# First program: same as https://www.muppetlabs.com/~breadbox/software/tiny/teensy.html
# Just return 42.
#
# To run (from the subx directory):
#   $ ./subx translate examples/ex1.2.subx -o examples/ex1
#   $ ./subx run examples/ex1
# Expected result:
#   $ echo $?
#   42

== code 0x09000000

Entry:
# syscall(exit, 42)
bb/copy-to-EBX  2a/imm32  # 42 in hex
b8/copy-to-EAX  1/imm32/exit
cd/syscall  0x80/imm8

== data 0x0a000000

# . . vim:nowrap:textwidth=0