Menu

dynamips-MinGW / Blog: Recent posts


working on merging in the latest github 0.2.16

should be done soon.

Posted by Jason Stevens 2016-04-07

Looks like i'm getting traction on the main project!

I saw my port mentioned here!
So they cut out the libuuid stuff, and the multicast NIO which I had to sidestep anyways.

It's nearly 4am, and Im not in the right place to do a rebase, but look forward to a new update of the 'stable/unstable' and my mix of both the 'merge' exe's this week!

Posted by Jason Stevens 2016-04-03 Labels: updates

Updated more tech spec's from github

namely here:
https://github.com/flaviojs/dynamips-datasheets

good to have copies.

Posted by Jason Stevens 2015-10-01 Labels: pdf

I setup a 'custom firmware' for the cisco 1700

to run some simple programs, and I setup an Infocom intrepeter, InfoTaskForce to run from cilo. I just received word it actually works on real hardware!

I copied it to flash and added
boot system flash ciscoload.bin

*Aug 5 23:33:44.743: %SYS-5-RELOAD: Reload requested by console. Reload Reason: Reload Command.
System Bootstrap, Version 12.2(7r)XM4, RELEASE SOFTWARE (fc1)
TAC Support: http://www.cisco.com/tac
Copyright (c) 2003 by cisco Systems, Inc.
C1700 platform with 98304 Kbytes of main memory

program load complete, entry point: 0x8000d9c8, size: 0x24f03
CILO
CiscoLoader (CILO) – Linux bootloader for Cisco Routers
Available RAM: 98304 kB
Available commands:
c1700-k9o3sy7-mz.124-15.T10.bin
vlan.dat
old-startup
ciscoload.bin
queen
hanoi
horse
fib
planetfall
halt

Enter filename to boot:

Enter filename to boot:
malloc 64512 offset is 0 offset is now 64522
malloc 38912 offset is 64522 offset is now 103444
PLANETFALL
Infocom interactive fiction – a science fiction story
Copyright (c) 1983 by Infocom, Inc. All rights reserved.
PLANETFALL is a trademark of Infocom, Inc.
Release 37 / Serial number 851003

Another routine day of drudgery aboard the Stellar Patrol Ship Feinstein. This
morning’s assignment for a certain lowly Ensign Seventh Class: scrubbing the
filthy metal deck at the port end of Level Nine. With your Patrol-issue
self-contained multi-purpose all-weather scrub brush you shine the floor with a
diligence born of the knowledge that at any moment dreaded Ensign First Class
Blather, the bane of your shipboard existence, could appear.

Deck Nine
This is a featureless corridor similar to every other corridor on the ship. It
curves away to starboard, and a gangway leads up. To port is the entrance to
one of the ship’s primary escape pods. The pod bulkhead is closed.

Deck Nine Score: 0/4451
... read more

Posted by Jason Stevens 2015-09-27 Labels: cisco cilo c1700 IOS firmware

I've added some PowerPC ELF cross compiler tools

And they work building CILO on both Linux and Windows.

Posted by Jason Stevens 2015-09-25

Uploaded some MIPS-ELF cross compilers

Now that I can acutally compile CILO! I don't know how useful it'll be for the world at large, but at the minimum I can do some basic benchmarking to see how performance is, inside of Dynamips now.

And it's a bear to build a MIPS-ELF toolset for Windows, so I know I'd want that out there.

Posted by Jason Stevens 2015-09-24

How to launch a 2600 with WIC's on the CLI

I couldn't find this anywhere, but here we go.

dynamips.exe -P 2600 -r 128 -X -t 2611XM C2600-AD.BIN -p 1:NM-4E -p 0:16:WIC-2T -p 0:32:WIC-2T

By default the 2611 has a net module in slot 0, a dual port FE (CISCO2600-MB-2FE) so you can't change that. But you can put a net module in slot 1. WIC slots map weird. Also the 2611 is stuck to only 2 WICs.

Posted by Jason Stevens 2015-09-20

-X --sparse-mem flags break the npe-g2

well more so --sparse-mem. Using -X works fine.

Posted by Jason Stevens 2015-09-19

One million packets served!

I ran a one million packet ping, of 36 bytes to SLiRP, and I got the happy result:

"Success rate is 100 percent (1000000/1000000), round-trip min/avg/max = 1/14/616 ms"

So I'll release a stand-alone EXE for SLiRP first that works over UDP, then I'll see about adding it directly into Dynamips, so you can control it from there, and do things like add redirection.

Posted by Jason Stevens 2015-09-18

Experiment in making Dynamips into a DLL. First step into going in the world of COM.

Currently the hypervisor mode is broken. And the DLL only works when statically called, dynamic references break for some unknown stack corruption reason. (increase the stack of dll2.c ??) There is also far too much printf'ing going on. I may have to do that lame fprintf(stdout). I dont know or a macro for output. yuck.

Standalone MIPS and PowerPC work.
dynamips.exe -X -T 7200 -P 1700 -t 1710 -r 64 --idle-pc 0x80369ac4 c1700-y-mz.120-7.T.bin
dynamips.exe -X -T 7200 -P 7200 -t npe-150 -p 0:C7200-IO-FE -T 7200 c7200-is-mz.120-7.T3.bin... read more

Posted by Jason Stevens 2015-09-15

I've been doing more testing

Plus I updated the binaries. I think I may have included an -march=native build.... Also I got some more images to test.

I think this will trash the table layout...

So far the unstable MIPS emulator doesn't work at all. I've had much better luck with the unstable PowerPC emulator, but it's not 100%.

PowerPC NPE-G2
dynamips -P 7200 -t npe-g2 -r 1024 -s0:npe-g2 UNSTABLE STABLE MERGE

c7200p-adventerprisek9-mz.152-4.M6.bin NO YES
c7200p-adventerprisek9-mz.124-4.XD11.bin YES YES
c7200p-adventerprisek9-mz.124-4.XD9.bin NO *1 YES
c7200p-p-mz.122-31.SB12.bin YES YES
c7200p-spservicesk9-mz.150-1.M9.bin YES NO YES... read more

Posted by Jason Stevens 2015-09-13

Merged the unstable PowerPC JIT and stable MIPS JIT

Yep, instead of two copies of Dynamips that can JIT one or the other on MinGW, I've managed to get both sides to compile into the same binary.

Really.

Testing has NOT been extensive, but I can load a 1710 and 7200 IOS image. I haven't tried it with the hypervisor to see if I can do both at the same time yet...

PowerPC
dynamips.exe -X -T 7200 -P 1700 -t 1710 -r 64 c1700-y-mz.120-7.T.bin

MIPS
dynamips.exe -X -T 7200 -P 7200 -t npe-150 -p 0:C7200-IO-FE -T 7200 c7200-is-mz.120-7.T3.bin... read more

Posted by Jason Stevens 2015-09-12

I've been able to connect with DynGen

and (C7200-IPBASE-M), Version 15.0(1)M runs and idles once you set a value.

There is still plenty of cleanup to do, and I still need to see if the latest GNS3 can drive this Dynamips. After that I'd like to see a Win64 build, so we don't have the 32bit memory space issues, although the only MinGW64 stuff I have want to be too much like Unix, so things fail all the time trying to build stuff with conflicts with winsock headers.... read more

Posted by Jason Stevens 2015-09-11

UDP transport works!

I setup two routing instances, well basically two subdirectories, with the program and IOS in the parent.

r1

..\dynamips.exe -P 7200 -X --sparse-mem -T 7200 -t npe-200 ..\C7200-IS.BIN -p 0:C7200-IO-FE -s 0:0:udp:10000:127.0.0.1:10001

r2

..\dynamips.exe -P 7200 -X --sparse-mem -T 7201 -t npe-200 ..\C7200-IS.BIN -p 0:C7200-IO-FE -s 0:0:udp:10001:127.0.0.1:10000

And I've been running an extended ping, with the sweep size.... read more

Posted by Jason Stevens 2015-09-11 Labels: udp

Got pcap to work

And it is kind of tedious. You have to make sure your NPE has an ethernet device, or of course add in an Ethernet device.

dynamips.exe -P 7200 -X --sparse-mem -T 7200 -t npe-200 C7200-IS.BIN -p 0:C7200-IO-FE -s 0:0:gen_eth:"\Device\NPF_{0CFA803F-F443-4BB9-A83A-657029A98195}"

But yes, this works. Of course your ethernet device will be different than mine.

I will probably re-write the pcap code to be dynamic. I've always hated how Dynamips won't run without winpcap, and maybe I'm not going to use it...

Posted by Jason Stevens 2015-09-11

Big first day!

So, first off I managed to get Dynamips to run on MinGW which was nothing short of amazing. Next I was able to rebase it againt the current github repo, and not only did it build, but JIT works too! And it is amazingly FAST!

I still haven't even tried to network it at all, there is most likely all kinds of bugs and crashes, but wow not bad!

Posted by Jason Stevens 2015-09-10 Labels: day one
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.