changeset 3129:ce9f4ff0a380

l1 rel.asm: Do the module padding in a more portable way Add comments to describe what's happening and why.
author Neal Crook <foofoobedoo@gmail.com>
date Wed, 30 Nov 2016 22:10:56 +0000
parents a8007a15f06a
children e0614e08fa5e
files level1/modules/rel.asm
diffstat 1 files changed, 11 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/level1/modules/rel.asm	Wed Nov 30 22:10:56 2016 +0000
+++ b/level1/modules/rel.asm	Wed Nov 30 22:10:56 2016 +0000
@@ -283,7 +283,17 @@
          clr   >$FFDF     go to all RAM mode
          jmp   >Offset+reset and re-start the boot
 
-Pad      fill  $39,$127-*
+* L2 kernel file is composed of rel, boot, krn. The size of each of these
+* is controlled with filler, so that (after relocation):
+* rel  starts at $ED00 and is $130 bytes in size
+* boot starts at $EE30 and is $1D0 bytes in size
+* krn  starts at $F000 and ends at $FEFF (there is no 'emod' at the end
+*      of krn and so there are no module-end boilerplate bytes)
+*
+* Filler to get to a total size of $130. XX.Size is bytes at the start of
+* this file - before the module header. 3 is bytes after this filler - the
+* end boilerplate for the module.
+Filler   fill  $39,$130-XX.Size-3-*
 
          ELSE                          match IFGT Level-1