Skip to content

Commit 761eba9

Browse files
authored
Update README.md
Not sure why that garbage about mingw got inserted right at the top of the readme.
1 parent c5239f3 commit 761eba9

File tree

1 file changed

+4
-90
lines changed

1 file changed

+4
-90
lines changed

README.md

Lines changed: 4 additions & 90 deletions
Original file line numberDiff line numberDiff line change
@@ -1,96 +1,7 @@
11
simavr - a lean and mean Atmel AVR simulator for linux
22
======
33

4-
# Notes for compiling on MinGW
5-
6-
Get MSys2 mingw from https://www.msys2.org/
7-
Start the MSYS MinGW shortcut (e.g. MSYS2 MinGW 32-bit or 64-bit)
8-
9-
Update packages
10-
11-
```
12-
pacman -Syu
13-
```
14-
15-
Install toolchains and dependencies. For 64-bit
16-
17-
```
18-
pacman -S mingw-w64-x86_64-toolchain
19-
pacman -S mingw-w64-x86_64-libelf
20-
pacman -S mingw-w64-x86_64-avr-toolchain
21-
pacman -S mingw-w64-x86_64-freeglut
22-
```
23-
24-
Replace `x86_64` with `i686` to get the 32-bit version instead.
25-
26-
```
27-
pacman -S mingw-w64-i686-toolchain
28-
pacman -S mingw-w64-i686-libelf
29-
pacman -S mingw-w64-i686-avr-toolchain
30-
pacman -S mingw-w64-i686-freeglut
31-
```
32-
33-
etc. **There currently is an issuw with the AVR toolchain:** https://github.com/msys2/MINGW-packages/issues/9183
34-
35-
Note: If you are using the 32-bit version, you **may** have to adapt `Makefile.common` regarding `AVR_ROOT := /mingw64/avr` to `AVR_ROOT := /mingw32/avr`. I have not tested this and the paths may be the same, but if you run into errors regarding AVR, check there.
36-
37-
In the normal user directory (`cd ~`), clone this repo
38-
39-
```
40-
git clone https://github.com/maxgerhardt/simavr.git
41-
cd simavr
42-
```
43-
44-
Start building with
45-
46-
```
47-
make build-simavr V=1
48-
```
49-
50-
That should be successfull.
51-
52-
Now create a install directory and install it. Note that `/home/Max/` is in this case my home directory.
53-
54-
Additionally this renames `simavr` to `simavr.exe` to make it properly executable. Ignore the compile error in the examples, it only counts that simavr is copied to the install directory.
55-
56-
```
57-
mkdir simavr_installed
58-
make install DESTDIR=/home/$USER/simavr/simavr_installed/
59-
mv simavr_installed/bin/simavr simavr_installed/bin/simavr.exe
60-
```
61-
62-
Copy the compiled output back to the normal Windows environment, e.g.
63-
64-
```
65-
cp -r /home/$USER/simavr/simavr_installed/ /c/Users/$USER/Desktop
66-
```
67-
68-
You should now have a working simavr executable.
69-
70-
```
71-
C:\Users\Max\Desktop\simavr_installed\bin>simavr --help
72-
Usage: simavr [...] <firmware>
73-
[--freq|-f <freq>] Sets the frequency for an .hex firmware
74-
[--mcu|-m <device>] Sets the MCU type for an .hex firmware
75-
[--list-cores] List all supported AVR cores and exit
76-
[--help|-h] Display this usage message and exit
77-
[--trace, -t] Run full scale decoder trace
78-
[-ti <vector>] Add traces for IRQ vector <vector>
79-
[--gdb|-g [<port>]] Listen for gdb connection on <port> (default 1234)
80-
[-ff <.hex file>] Load next .hex file as flash
81-
[-ee <.hex file>] Load next .hex file as eeprom
82-
[--input|-i <file>] A vcd file to use as input signals
83-
[--output|-o <file>] A vcd file to save the traced signals
84-
[--add-trace|-at <name=kind@addr/mask>] Add signal to be traced
85-
[-v] Raise verbosity level
86-
(can be passed more than once)
87-
<firmware> A .hex or an ELF file. ELF files are
88-
prefered, and can include debugging syms
89-
```
90-
91-
-----------------------
92-
93-
_simavr_ is a new AVR simulator for linux, or any platform that uses avr-gcc. It uses
4+
_simavr_ is an AVR simulator for linux, or any platform that uses avr-gcc. It uses
945
avr-gcc's own register definition to simplify creating new targets for supported AVR
956
devices. The core was made to be small and compact, and hackable so allow quick
967
prototyping of an AVR project. The AVR core is now stable for use with parts
@@ -126,6 +37,7 @@ Supported IOs
12637
* External _Interrupts_, INT0 and so on.
12738
* _ADC_
12839
* Self-programming (ie bootloaders!)
40+
* A lot more!
12941

13042
Emulated Cores (very easy to add new ones!)
13143
--------------
@@ -145,12 +57,14 @@ Emulated Cores (very easy to add new ones!)
14557
+ ATTIny44/84
14658
+ ATTiny2313/2313v
14759
+ ATTiny13/13a
60+
+ Many more!
14861

14962
Extras:
15063
-------
15164
* fully working _gdb_ support including some pretty cool “passive modes”.
15265
* There is also very easy support for “VCD” (Value Change Dump) that can be visualized
15366
graphically as “waveforms” with tools like _gtkwave_ (see below).
67+
* You can even source your own VCD files (for example from your logic analyzer) and feed them into your simulation.
15468
* There are a few examples of real life firmwares running on simavr, including OpenGL rendering of the display…
15569
* There is support for _Arduino_, but no IDE integration
15670

0 commit comments

Comments
 (0)