ports/108021: New Port : gpsim Microchip(t) PIC emulator

jorge niedbalski niedbalski at openbsd.cl
Tue Jan 16 21:50:24 UTC 2007


>Number:         108021
>Category:       ports
>Synopsis:       New Port : gpsim Microchip(t) PIC emulator
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jan 16 21:50:24 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     jorge niedbalski
>Release:        6.2-STABLE
>Organization:
ntk
>Environment:
FreeBSD blowjob.unix 6.2-STABLE FreeBSD 6.2-STABLE #1: Tue Jan 16 12:04:18 CLST 2007     aktive at blowjob.unix:/usr/obj/usr/src/sys/SMP  i386

>Description:
gpsim is a full-featured software simulator for Microchip PIC microcontrollers distributed under the GNU General Public License

gpsim has been designed to be as accurate as possible. Accuracy includes the entire PIC - from the core to the I/O pins and including 
ALL of the internal peripherals. Thus it's possible to create stimuli and tie them to the I/O pins and test the PIC the same PIC the 
same way you would in the real world.

gpsim has been designed to be as fast as possible. Real time simulation speeds of 20Mhz pics are possible. ( A 'goto $' program runs at 
the same speed as a 25Mhz pic when simulated on my 400Mhz PII Linux Box. Of course, as you add stimuli and begin interacting with 
peripherals, the performance drops. But it's still fast!)

gpsim has been designed to be as useful as possible. (At least that's the intent - honest.) The standard simulation paradigm including 
breakpoints, single stepping, disassembling, memory inspect & change, and so on has been implemented. In addition, gpsim supports many 
debugging features that are only available with in-circuit emulators. For example, a continuous trace buffer tracks every action of the 
simulator (whether you want it or not). Also, it's possible to set read and write break points on values (e.g. break if a specific 
value is read from or written to a register).


WWW:    http://www.dattalo.com/gnupic/gpsim.html

>How-To-Repeat:

>Fix:
gpsim is a full-featured software simulator for Microchip PIC microcontrollers distributed under the GNU General Public License

gpsim has been designed to be as accurate as possible. Accuracy includes the entire PIC - from the core to the I/O pins and including 
ALL of the internal peripherals. Thus it's possible to create stimuli and tie them to the I/O pins and test the PIC the same PIC the 
same way you would in the real world.

gpsim has been designed to be as fast as possible. Real time simulation speeds of 20Mhz pics are possible. ( A 'goto $' program runs at 
the same speed as a 25Mhz pic when simulated on my 400Mhz PII Linux Box. Of course, as you add stimuli and begin interacting with 
peripherals, the performance drops. But it's still fast!)

gpsim has been designed to be as useful as possible. (At least that's the intent - honest.) The standard simulation paradigm including 
breakpoints, single stepping, disassembling, memory inspect & change, and so on has been implemented. In addition, gpsim supports many 
debugging features that are only available with in-circuit emulators. For example, a continuous trace buffer tracks every action of the 
simulator (whether you want it or not). Also, it's possible to set read and write break points on values (e.g. break if a specific 
value is read from or written to a register).


WWW:    http://www.dattalo.com/gnupic/gpsim.html

Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	gpsim/Makefile
#	gpsim/distinfo
#	gpsim/pkg-descr
#	gpsim/pkg-plist
#
echo c - gpsim
mkdir -p gpsim > /dev/null 2>&1
echo x - gpsim/Makefile
sed 's/^X//' >gpsim/Makefile << 'END-of-gpsim/Makefile'
X# New ports collection makefile for:	gpsim
X# Date created:		2007-01-16
X# Whom:			jorge niedbalski <niedbalski at openbsd.cl>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	gpsim
XPORTVERSION=	0.22.0
XPORTREVISION=	1
XCATEGORIES=	emulators
XMASTER_SITES=	http://ufpr.dl.sourceforge.net/sourceforge/gpsim/ \
X		http://internap.dl.sourceforge.net/sourceforge/gpsim/ \
X		http://ovh.dl.sourceforge.net/sourceforge/gpsim/
X
XPATCH_SITES = http://jorge.niedbalski.com/public/patch/
XPATCHFILES = gpsim-022.patch.gz
X
XLIB_DEPENDS = gtkextra-x11-2.0.1:${PORTSDIR}/x11-toolkits/gtkextra2/
X
XMAINTAINER=	niedbalski at openbsd.cl
XCOMMENT=	Gpsim is a full-featured software simulator for Microchip PIC microcontrollers
X
X
XGNU_CONFIGURE=  yes
XUSE_GMAKE=      yes
XMANCOMPRESSED= yes
X
X.include <bsd.port.pre.mk>
X.include <bsd.port.post.mk>
END-of-gpsim/Makefile
echo x - gpsim/distinfo
sed 's/^X//' >gpsim/distinfo << 'END-of-gpsim/distinfo'
XMD5 (gpsim-0.22.0.tar.gz) = f05a4e58d24b5a5c6b57c8d0e3810f75
XSHA256 (gpsim-0.22.0.tar.gz) = 08fdc92b88dee4cd9d63e5abe56dc73940b0efec427997eee005f8fe75d54fc7
XSIZE (gpsim-0.22.0.tar.gz) = 1528125
XMD5 (gpsim-022.patch.gz) = 60e54bb02ded986064b86bf2bd57b5f3
XSHA256 (gpsim-022.patch.gz) = 9c70db26c28abdb2825eedca73b1d6e3cc63acac7eca6b9a0fe8f79a59cd3fd1
XSIZE (gpsim-022.patch.gz) = 262
END-of-gpsim/distinfo
echo x - gpsim/pkg-descr
sed 's/^X//' >gpsim/pkg-descr << 'END-of-gpsim/pkg-descr'
Xgpsim is a full-featured software simulator for Microchip PIC microcontrollers distributed under the GNU General Public License
X
Xgpsim has been designed to be as accurate as possible. Accuracy includes the entire PIC - from the core to the I/O pins and including 
XALL of the internal peripherals. Thus it's possible to create stimuli and tie them to the I/O pins and test the PIC the same PIC the 
Xsame way you would in the real world.
X
Xgpsim has been designed to be as fast as possible. Real time simulation speeds of 20Mhz pics are possible. ( A 'goto $' program runs at 
Xthe same speed as a 25Mhz pic when simulated on my 400Mhz PII Linux Box. Of course, as you add stimuli and begin interacting with 
Xperipherals, the performance drops. But it's still fast!)
X
Xgpsim has been designed to be as useful as possible. (At least that's the intent - honest.) The standard simulation paradigm including 
Xbreakpoints, single stepping, disassembling, memory inspect & change, and so on has been implemented. In addition, gpsim supports many 
Xdebugging features that are only available with in-circuit emulators. For example, a continuous trace buffer tracks every action of the 
Xsimulator (whether you want it or not). Also, it's possible to set read and write break points on values (e.g. break if a specific 
Xvalue is read from or written to a register).
X
X
XWWW:	http://www.dattalo.com/gnupic/gpsim.html
END-of-gpsim/pkg-descr
echo x - gpsim/pkg-plist
sed 's/^X//' >gpsim/pkg-plist << 'END-of-gpsim/pkg-plist'
Xbin/gpsim
Xinclude/eXdbm/eXdbm.h
Xinclude/eXdbm/eXdbmErrors.h
Xinclude/eXdbm/eXdbmTypes.h
Xinclude/gpsim/12bit-instructions.h
Xinclude/gpsim/12bit-processors.h
Xinclude/gpsim/14bit-instructions.h
Xinclude/gpsim/14bit-processors.h
Xinclude/gpsim/14bit-registers.h
Xinclude/gpsim/14bit-tmrs.h
Xinclude/gpsim/16bit-instructions.h
Xinclude/gpsim/16bit-processors.h
Xinclude/gpsim/16bit-registers.h
Xinclude/gpsim/16bit-tmrs.h
Xinclude/gpsim/ValueCollections.h
Xinclude/gpsim/a2dconverter.h
Xinclude/gpsim/attributes.h
Xinclude/gpsim/bit.h
Xinclude/gpsim/bitlog.h
Xinclude/gpsim/breakpoints.h
Xinclude/gpsim/bytelog.h
Xinclude/gpsim/cmd_gpsim.h
Xinclude/gpsim/cmd_manager.h
Xinclude/gpsim/cod.h
Xinclude/gpsim/comparator.h
Xinclude/gpsim/eeprom.h
Xinclude/gpsim/errors.h
Xinclude/gpsim/exports.h
Xinclude/gpsim/expr.h
Xinclude/gpsim/fopen-path.h
Xinclude/gpsim/gpsim_classes.h
Xinclude/gpsim/gpsim_def.h
Xinclude/gpsim/gpsim_interface.h
Xinclude/gpsim/gpsim_object.h
Xinclude/gpsim/gpsim_time.h
Xinclude/gpsim/hexutils.h
Xinclude/gpsim/i2c-ee.h
Xinclude/gpsim/icd.h
Xinclude/gpsim/intcon.h
Xinclude/gpsim/interface.h
Xinclude/gpsim/ioports.h
Xinclude/gpsim/lxt_write.h
Xinclude/gpsim/modules.h
Xinclude/gpsim/operator.h
Xinclude/gpsim/p12x.h
Xinclude/gpsim/p16f62x.h
Xinclude/gpsim/p16f87x.h
Xinclude/gpsim/p16f8x.h
Xinclude/gpsim/p16x5x.h
Xinclude/gpsim/p16x6x.h
Xinclude/gpsim/p16x7x.h
Xinclude/gpsim/p16x8x.h
Xinclude/gpsim/p17c75x.h
Xinclude/gpsim/p18x.h
Xinclude/gpsim/packages.h
Xinclude/gpsim/pic-instructions.h
Xinclude/gpsim/pic-ioports.h
Xinclude/gpsim/pic-packages.h
Xinclude/gpsim/pic-processor.h
Xinclude/gpsim/pic-registers.h
Xinclude/gpsim/picdis.h
Xinclude/gpsim/pie.h
Xinclude/gpsim/pir.h
Xinclude/gpsim/pm_rd.h
Xinclude/gpsim/processor.h
Xinclude/gpsim/program_files.h
Xinclude/gpsim/protocol.h
Xinclude/gpsim/psp.h
Xinclude/gpsim/pthread-wrap.h
Xinclude/gpsim/registers.h
Xinclude/gpsim/sim_context.h
Xinclude/gpsim/ssp.h
Xinclude/gpsim/stimuli.h
Xinclude/gpsim/stimulus_orb.h
Xinclude/gpsim/symbol.h
Xinclude/gpsim/symbol_orb.h
Xinclude/gpsim/tmr0.h
Xinclude/gpsim/trace.h
Xinclude/gpsim/trace_orb.h
Xinclude/gpsim/trigger.h
Xinclude/gpsim/ttoken.h
Xinclude/gpsim/uart.h
Xinclude/gpsim/ui.h
Xinclude/gpsim/value.h
Xinclude/gpsim/xref.h
Xlib/libgpsim.a
Xlib/libgpsim.la
Xlib/libgpsim.so
Xlib/libgpsim.so.0
Xlib/libgpsim_dspic.a
Xlib/libgpsim_dspic.la
Xlib/libgpsim_dspic.so
Xlib/libgpsim_dspic.so.0
Xlib/libgpsim_eXdbm.a
Xlib/libgpsim_eXdbm.la
Xlib/libgpsim_eXdbm.so
Xlib/libgpsim_eXdbm.so.0
Xlib/libgpsim_modules.a
Xlib/libgpsim_modules.la
Xlib/libgpsim_modules.so
Xlib/libgpsim_modules.so.0
Xlib/libgpsimcli.a
Xlib/libgpsimcli.la
Xlib/libgpsimcli.so
Xlib/libgpsimcli.so.0
Xlib/libgpsimgui.a
Xlib/libgpsimgui.la
Xlib/libgpsimgui.so
Xlib/libgpsimgui.so.0
X at dirrm share/nls/en_US.US-ASCII
X at dirrm share/nls/POSIX
X at dirrm include/gpsim
X at dirrm include/eXdbm
END-of-gpsim/pkg-plist
exit


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list