⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mixguile-commands.scm

📁 汇编语言编程源代码
💻 SCM
字号:
;; -*-scheme-*- -------------- mixguile-commands.scm :;  mixvm commands implementation using the mixvm-cmd primitive;  ------------------------------------------------------------------;   $Id: mixguile-commands.scm,v 1.4 2001/09/15 02:12:58 jao Exp $;  ------------------------------------------------------------------;  Copyright (C) 2001 Free Software Foundation, Inc.;   ;  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.;   ;;;; auxiliar functions for argument conversion(define argsym->string  (lambda (arg)    (cond ((symbol? arg) (symbol->string arg))	  ((string? arg) arg)	  (else (error "Wrong argument type" arg)))))(define argnsym->string  (lambda (arg)    (cond ((null? arg) "")	  ((pair? arg) (argsym->string (car arg)))	  (else (argsym->string arg)))))(define argnum->string  (lambda (arg)    (cond ((number? arg) (number->string arg))	  ((string? arg) arg)	  (else (error "Wrong argument type" arg)))))(define argnnum->string  (lambda (arg)    (cond ((null? arg) "")	  ((pair? arg) (argnum->string (car arg)))	  (else (argnum->string arg)))));;; mixvm commands; preg(define mix-preg  (lambda (. reg)    (mixvm-cmd "preg" (argnsym->string reg)))); sreg(define mix-sreg  (lambda (reg val) (mixvm-cmd "sreg" (string-append (argsym->string reg)						     " "						     (argnum->string val))))); pmem(define mix-pmem  (lambda (from . to)    (cond ((null? to) (mixvm-cmd "pmem" (argnum->string from)))	  (else (mixvm-cmd "pmem"			   (string-append (argnum->string from)					  "-"					  (argnnum->string to))))))); smem(define mix-smem  (lambda (cell val) (mixvm-cmd "smem" (string-append (argnum->string cell)						      " "						      (argnum->string val))))); pall(define mix-pall (lambda () (mixvm-cmd "pall" ""))); pc(define mix-pc (lambda () (mixvm-cmd "pc" ""))); pflags(define mix-pflags (lambda () (mixvm-cmd "pflags" ""))); sover(define mix-sover  (lambda (val)    (mixvm-cmd "sover" (if val "T" "F")))); psym(define mix-psym  (lambda (. sym)    (mixvm-cmd "psym" (argnsym->string sym)))); ssym(define mix-ssym  (lambda (sym value)    (mixvm-cmd "ssym"	       (string-append		(argsym->string sym) " " (argnum->string value))))); run(define mix-run  (lambda (. file)    (mixvm-cmd "run" (argnsym->string file)))); next(define mix-next  (lambda (. no)    (mixvm-cmd "next" (argnnum->string no)))); load(define mix-load  (lambda (file)    (mixvm-cmd "load" (argsym->string file)))); pstat(define mix-pstat (lambda () (mixvm-cmd "pstat" ""))); compile(define mix-compile  (lambda (. file)    (mixvm-cmd "compile" (argnsym->string file)))); devdir(define mix-sddir  (lambda (dir)    (mixvm-cmd "sddir" dir)))(define mix-pddir (lambda () (mixvm-cmd "pddir" ""))); edit(define mix-edit  (lambda (. file)    (mixvm-cmd "edit" (argnsym->string file)))); help(define mix-help  (lambda (. cmd)    (mixvm-cmd "help" (argnsym->string cmd)))); pasm(define mix-pasm (lambda () (mixvm-cmd "pasm" ""))); sasm(define mix-sasm  (lambda (path)    (mixvm-cmd "sasm" (argsym->string path)))); pedit(define mix-pedit (lambda () (mixvm-cmd "pedit" ""))); sedit(define mix-sedit  (lambda (path)    (mixvm-cmd "sedit" (argsym->string path)))); sbp(define mix-sbp  (lambda (line)    (mixvm-cmd "sbp" (argnum->string line)))); sbp(define mix-pline  (lambda (. no)    (mixvm-cmd "pline" (argnnum->string no)))); cbp(define mix-cbp  (lambda (line)    (mixvm-cmd "cbp" (argnum->string line)))); sbpa(define mix-sbpa  (lambda (addr)    (mixvm-cmd "sbpa" (argnum->string addr)))); cbpa(define mix-cbpa  (lambda (addr)    (mixvm-cmd "cbpa" (argnum->string addr)))); sbpc(define mix-sbpc (lambda () (mixvm-cmd "sbpc" ""))); cbpc(define mix-cbpc (lambda () (mixvm-cmd "cbpc" ""))); sbpo(define mix-sbpo (lambda () (mixvm-cmd "sbpo" ""))); cbpo(define mix-cbpo (lambda () (mixvm-cmd "cbpo" ""))); sbpm(define mix-sbpm  (lambda (cell)    (mixvm-cmd "sbpm" (argnum->string cell)))); cbpm(define mix-cbpm  (lambda (cell)    (mixvm-cmd "cbpm" (argnum->string cell)))); sbpr(define mix-sbpr  (lambda (reg)    (mixvm-cmd "sbpr" (argsym->string reg)))); cbpr(define mix-cbpr  (lambda (reg)    (mixvm-cmd "cbpr" (argsym->string reg)))); pbt(define mix-pbt  (lambda (. num)    (mixvm-cmd "pbt" (argnnum->string num)))); timing(define mix-stime  (lambda (on)    (mixvm-cmd "stime" (if on "on" "off"))))(define mix-ptime (lambda () (mixvm-cmd "ptime" ""))); timing(define mix-strace  (lambda (on)    (mixvm-cmd "strace" (if on "on" "off")))); logging(define mix-slog  (lambda (on)    (mixvm-cmd "slog" (if on "on" "off")))); w2d(define mix-w2d  (lambda (w)    (mixvm-cmd "w2d" w)));; weval(define mix-weval  (lambda (exp)    (mixvm-cmd "weval" (argsym->string exp)))); pprog(define mix-pprog (lambda () (mixvm-cmd "pprog" ""))); sprog(define mix-psrc (lambda () (mixvm-cmd "psrc" "")))

⌨️ 快捷键说明

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