qse/ase/stx/stx.txt

91 lines
2.8 KiB
Plaintext
Raw Normal View History

2005-06-23 04:59:00 +00:00
stx(1) xpkit
NAME
stx - xpkit embeddable smalltalk system
SYNOPSIS
stx [-f imageFile] MainClass
DESCRIPTION
The virtual machine executes "MainClass main" on start-up.
method 1.
push lookup_class(#MainClass) -> receiver.
send a unary(no argument) message with the selector #main.
return the returned value from main and exits.
method 2. - take a command parameter
push lookup_class(#MainClass) -> receiver.
push argc as an argument.
push argv as an argument.
send a double-argument message the the selector #main:withArgv:.
return the returned value from #main:withArgv and exits.
AUTHOR(S)
Chung, Hyung-Hwan (bacon@piowave.com) is the sole designer and implementer of stx.
BUG REPORTS
Report bugs to bacon@piowave.com if you find any bugs. but make sure that it is really a bug before you report it.
COPYRIGHT
Copyright(c) 2005 bacon@piowave.com
SEE ALSO
xpkit(7)
2005-07-10 03:16:40 +00:00
-- stack bytecodes --
0 0000 XXXX push_receiver_variable
1 0001 XXXX push_temporary_location
2 0010 XXXX push_literal_constant
3 0011 XXXX push_literal_variable
4 0100 XXXX store_receiver_variable
5 0101 XXXX store_temporary_location
6 0110 0000 XXXXXXXX push_receiver_variable_extended
0110 0001 XXXXXXXX push_temporary_location_extended
0110 0010 XXXXXXXX push_literal_constant_extended
0110 0011 XXXXXXXX push_literal_variable_extended
0110 0100 XXXXXXXX store_receiver_variable_extended
0110 0101 XXXXXXXX store_temporary_location_extended
2005-07-10 09:21:46 +00:00
0110 0110 unused
0110 0111 unused
2005-07-10 03:16:40 +00:00
0110 1000 pop_stack_top
0110 1001 duplicate_stack_top
0110 1010 push_active_context
2005-07-10 09:21:46 +00:00
0110 1011 unused
0110 1100 unused
0110 1101 unused
0110 1110 unused
0110 1111 unused
2005-07-10 03:16:40 +00:00
-- send bytecodes --
2005-07-10 09:21:46 +00:00
7 0111 0000 JJJKKKKK send_to_self
0111 0001 JJJKKKKK send_to_super
0111 0010 JJJJJJJJ KKKKKKKK send_to_self_extended
0111 0011 JJJJJJJJ KKKKKKKK send_to_super_extended
2005-07-10 03:16:40 +00:00
0111 0100 XXXXXXXX
0111 0101 XXXXXXXX
0111 0110 XXXXXXXX
0111 0111 XXXXXXXX
-- return bytecodes --
0111 1000 return receiver
0111 1001 return_true
0111 1010 return_false
0111 1011 return_nil
0111 1100 return_from_message
0111 1101 return_from_block
0111 1110
0111 1111
-- jump bytecodes --
8 1000 0XXX jump_forward
1000 1XXX XXXXXXXX jump_forward
2005-07-10 09:21:46 +00:00
-- primitive --
F 1111 XXXX XXXXXXXX do_primitive