Difference between revisions of "83Plus:BCALLs:8054"

From WikiTI
Jump to: navigation, search
(A bit simpler)
 
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:83Plus:BCALLs:By_Name:Other|FlashToRAM2]] [[Category:83Plus:BCALLs:By_Name|FlashToRAM2]] [[Category:83Plus:BCALLs:By_Address|8054 - FlashToRAM2]]
+
[[Category:83Plus:BCALLs:By_Name:Memory|FlashToRAM2]] [[Category:83Plus:BCALLs:By_Name|FlashToRAM2]] [[Category:83Plus:BCALLs:By_Address|8054 - FlashToRAM2]]
 
== Synopsis ==
 
== Synopsis ==
 
'''Unofficial Name:''' FlashToRAM2
 
'''Unofficial Name:''' FlashToRAM2
Line 8: Line 8:
  
 
=== Inputs ===
 
=== Inputs ===
* AHL = source address
+
* A = source page
 +
* HL = source address
 
* DE = destination address
 
* DE = destination address
 
* BC = number of bytes to copy
 
* BC = number of bytes to copy
  
 
=== Outputs ===
 
=== Outputs ===
* AHL advanced by BC bytes
+
* HL advanced by BC bytes
 
* DE advanced by BC bytes
 
* DE advanced by BC bytes
 
* BC = 0
 
* BC = 0
  
 
=== Destroys ===
 
=== Destroys ===
 +
* A
 
* [[83Plus:RAM:8100|ramCode]]
 
* [[83Plus:RAM:8100|ramCode]]
  
 
== Comments ==
 
== Comments ==
 
This is almost exactly equivalent to the OS [[83Plus:BCALLs:5017|FlashToRAM]].
 
This is almost exactly equivalent to the OS [[83Plus:BCALLs:5017|FlashToRAM]].
 +
 +
Note that the high bits of A are masked out appropriately (so, for instance, passing A = 7F will read from the boot page regardless of the hardware version.)  Set A = 0 to copy data from the main RAM; you cannot use this routine to copy data from the extra RAM.

Latest revision as of 04:17, 17 September 2008

Synopsis

Unofficial Name: FlashToRAM2

BCALL Address: 8054

Copy data to RAM from either Flash or RAM.

Inputs

  • A = source page
  • HL = source address
  • DE = destination address
  • BC = number of bytes to copy

Outputs

  • HL advanced by BC bytes
  • DE advanced by BC bytes
  • BC = 0

Destroys

Comments

This is almost exactly equivalent to the OS FlashToRAM.

Note that the high bits of A are masked out appropriately (so, for instance, passing A = 7F will read from the boot page regardless of the hardware version.) Set A = 0 to copy data from the main RAM; you cannot use this routine to copy data from the extra RAM.