sim: new tool (stub for now)

This commit is contained in:
Mikael Pettersson 2018-04-28 17:44:04 +02:00
parent 7fde78a4c6
commit 79fa45ce3a
4 changed files with 62 additions and 5 deletions

View File

@ -1,5 +1,5 @@
# Makefile for pdp10-tools
# Copyright (C) 2013-2015 Mikael Pettersson
# Copyright (C) 2013-2018 Mikael Pettersson
#
# This file is part of pdp10-tools.
#
@ -16,7 +16,7 @@
# You should have received a copy of the GNU General Public License
# along with pdp10-tools. If not, see <http://www.gnu.org/licenses/>.
SUBDIRS= lib 8to9 ar as nm od readelf
SUBDIRS= lib 8to9 ar as nm od readelf sim
all:
make TARGET= subdirs

7
README
View File

@ -1,5 +1,5 @@
# README for pdp10-tools
# Copyright (C) 2013-2015 Mikael Pettersson <mikpelinux@gmail.com>
# Copyright (C) 2013-2018 Mikael Pettersson <mikpelinux@gmail.com>
#
# This file is part of pdp10-tools.
#
@ -20,8 +20,7 @@
PDP10-TOOLS
===========
pdp10-tools is a collection of utilities for manipulating pdp10-elf
binary files.
pdp10-tools is a collection of utilities for pdp10-elf.
ar: an 'ar' clone for pdp10-elf object files
as: a pdp10 assembler producing pdp10-elf object files
@ -32,6 +31,8 @@ nm: an 'nm' clone for pdp10-elf object files
od: an 'od' clone for binary files with 9-bit bytes (nonets)
readelf: a 'readelf' clone for pdp10-elf object files,
extended with an option to disassemble .text sections
sim: a simulator for running pdp10-elf executables on a
hypothetical fully-extended PDP10 called the KE10
8to9: a utility to convert octet files to nonet files
pdp10-stdio: a library for reading and writing nonet-based data

32
sim/Makefile Normal file
View File

@ -0,0 +1,32 @@
# sim/Makefile
# Copyright (C) 2018 Mikael Pettersson
#
# This file is part of pdp10-tools.
#
# pdp10-tools 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 3 of the License, or
# (at your option) any later version.
#
# pdp10-tools 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 pdp10-tools. If not, see <http://www.gnu.org/licenses/>.
CC=gcc
CFLAGS=-O2 -g -Wall
CPPFLAGS=-I../include
SIMOBJS=sim.o
LIBOBJS=../lib/pdp10-elf36.o ../lib/pdp10-extint.o ../lib/pdp10-stdio.o
sim: $(SIMOBJS) $(LIBOBJS)
$(LINK.c) -o $@ $^
sim.o: sim.c ../include/pdp10-elf36.h ../include/pdp10-inttypes.h ../include/pdp10-stdint.h ../include/pdp10-stdio.h
clean:
rm -f $(SIMOBJS) sim a.out core.*

24
sim/sim.c Normal file
View File

@ -0,0 +1,24 @@
/*
* sim.c -- simulator for PDP10 Elf36 files
* Copyright (C) 2018 Mikael Pettersson
*
* This file is part of pdp10-tools.
*
* pdp10-tools 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 3 of the License, or
* (at your option) any later version.
*
* pdp10-tools 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 pdp10-tools. If not, see <http://www.gnu.org/licenses/>.
*/
int main(void)
{
return 1;
}