Difference between revisions of "83Plus:BCALLs:4E7C"

From WikiTI
Jump to: navigation, search
m
m (formatting clean-up)
 
Line 5: Line 5:
 
'''BCALL Address:''' 4E7C
 
'''BCALL Address:''' 4E7C
  
Executes an asm program by name.
+
Executes an assembly program by name.
  
 
=== Inputs ===
 
=== Inputs ===
* [[83Plus:RAM:8478|OP1]]: Name of the nostub asm program you want to run
+
* [[83Plus:RAM:8478|OP1]]: Name of the nostub assembly program you want to run
  
 
=== Outputs ===
 
=== Outputs ===
Line 14: Line 14:
  
 
=== Destroys ===
 
=== Destroys ===
All (at least the asm program can destroy them)
+
All (at least the assembly program can destroy them)
  
 
== Comments ==
 
== Comments ==
This B_CALL executes an asm program the same way running the program using asm( would. This means that you can only run programs you could run from the homescreen. It also means that the amount of available memory must be at least as large as the size of the program to execute, because it will copy the program to 9D95h. Shells like ion or mirageos move the program to 9D95h, which means that they can execute larger programs, because they don't need the extra ram to be available.  
+
This B_CALL executes an assembly program the same way running the program using Asm( would. This means that you can only run programs you could run from the homescreen. It also means that the amount of available memory must be at least as large as the size of the program to execute, because it will copy the program to 9D95h. Shells like Ion or MirageOS move the program to 9D95h, which means that they can execute larger programs, because they don't need the extra RAM to be available.  
  
 
== Example ==
 
== Example ==

Latest revision as of 13:40, 20 October 2008

Synopsis

Official Name: ExecutePrgm

BCALL Address: 4E7C

Executes an assembly program by name.

Inputs

  • OP1: Name of the nostub assembly program you want to run

Outputs

None

Destroys

All (at least the assembly program can destroy them)

Comments

This B_CALL executes an assembly program the same way running the program using Asm( would. This means that you can only run programs you could run from the homescreen. It also means that the amount of available memory must be at least as large as the size of the program to execute, because it will copy the program to 9D95h. Shells like Ion or MirageOS move the program to 9D95h, which means that they can execute larger programs, because they don't need the extra RAM to be available.

Example

ld  hl, programToExecute
rst rMOV9TOOP1
B_CALL ExecutePrgm

Credits and Contributions

  • Michael Vincet: For telling others about this B_CALL.