A different way of storing the ROM image.
[uccvend-snackrom.git] / ROM2 / src2asm.pl
1 #!/usr/bin/perl -w
2
3 $origin = 0x9800; # must match address of .romsrc in memory.x
4 $hole_start = 0xb600;
5 $hole_size = 0x0200;
6
7 print <<EOT;
8 .sect .rodata
9 .global _rom_src_data
10 .global _rom_src_len
11
12 .align 7 ; for a 128-bit boundary
13 _rom_src_data:
14 EOT
15 my $size = 0;
16 my $a;
17 while (read STDIN,$a,1) {
18         if ($origin+$size == $hole_start) {
19                 for($i = 0; $i < $hole_size; $i++) {
20                         print "\t.byte 0xff\n";
21                 }
22                 $size += $hole_size;
23         }
24         printf "\t.byte 0x%04x\n", ord($a);
25         $size++;
26 }
27 print <<EOT;
28
29         .align 2
30 _rom_src_len:
31         .word $size
32 EOT

UCC git Repository :: git.ucc.asn.au