asi2asm

来自「一款MP3 Player Firmware 的原代码,非常有参考价值」· 代码 · 共 52 行

TXT
52
字号
#! /usr/bin/perl# MP3 Player, Fill in Missing AS31 EQUs, http://www.pjrc.com/tech/mp3# Copyright (c) 2000, PJRC.COM, LLC# This is sort of kludge to allow one AS31 file to reference# symbols (defined with ".equ") from another AS31 file.  The# incomplete file should be named with ".asi".  The format of# substituted lines is ".need_equ <symbol> <filename.asm>".# This script opens the required file and substitutes the .equ# line requested.# This program is free software; you can redistribute it and/or# modify it under the terms of the GNU General Public License# as published by the Free Software Foundation; either version 2# of the License, or (at your option) any later version.# This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the# GNU General Public License for more details.# You should have received a copy of the GNU General Public License# along with this program; if not, write to the Free Software# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.print "; This file was automatically generated by asi2asm.\n";print "; DO NOT EDIT this file, edit the original .asi source\n\n";while (<>) {	$lineno++;	if (/\s*\.need_equ\s+(\w+)\s+([\w\.]+)/) {		($sym, $file) = ($1, $2);		open(ASM, $file) ||		   die "ERROR: Unable to read \"$file\", line $lineno\n";		undef($line);		while (<ASM>) {			next unless /\s*.equ\s+$sym[\s,]+/;			$line = $_;			last;		}		close(ASM);		$line ||		   die "ERROR: Unable to find \"$sym\" in \"$file\", line $lineno\n";	}	print;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?