mirror of
https://github.com/prirun/p50em.git
synced 2026-01-11 23:42:56 +00:00
secure: better security checking, plus many other changes
This commit is contained in:
parent
a0b8f60449
commit
3dce2cef47
12
makefile
12
makefile
@ -39,7 +39,7 @@ debug: # gdb (Intel)
|
||||
debugp: # gdb (PowerPC)
|
||||
|
||||
rm -rf em.o
|
||||
cc -arch ppc -DKEYID=${KEYID} -mmacosx-version-min=10.4 -DREV=\"${REV}\" -DNOREGS -g -O0 -DNOTRACE -DFAST -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/PPC/api;g++ -arch ppc -o em em.o dongle/mx/PPC/api/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
cc -arch ppc -DKEYID=${KEYID} -mmacosx-version-min=10.4 -DREV=\"${REV}\" -DNOREGS -g -O0 -DNOTRACE -DFAST -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/Universal/API/10_6;g++ -arch ppc -o em em.o dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
rm em.o
|
||||
|
||||
|
||||
@ -53,7 +53,7 @@ trace: # tracing + gdb (Intel)
|
||||
tracep: # tracing + gdb (PowerPC)
|
||||
|
||||
rm -rf em.o
|
||||
cc -arch ppc -DKEYID=${KEYID} ${REGS} -DREV=\"${REV}\" -DFAST -DNOMEM -O -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/Universal/API;g++ -arch ppc -o em em.o dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
cc -arch ppc -DKEYID=${KEYID} ${REGS} -DREV=\"${REV}\" -DFAST -O -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/Universal/API;g++ -arch ppc -o em em.o dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
rm -rf em.o
|
||||
|
||||
|
||||
@ -67,7 +67,7 @@ vfy: # prod + tracing to verify em changes (Intel)
|
||||
vfyp: # prod + tracing to verify em changes (PowerPC)
|
||||
|
||||
rm -rf em.o
|
||||
cc -arch ppc -mmacosx-version-min=10.4 -DREV=\"\" -O -DFAST -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/PPC/api;g++ -arch ppc -o em em.o dongle/mx/PPC/api/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
cc -arch ppc -mmacosx-version-min=10.4 -DREV=\"\" -O -DFAST -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/Universal/API/10_6;g++ -arch ppc -o em em.o dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
rm -rf em.o
|
||||
|
||||
|
||||
@ -81,7 +81,7 @@ fixed: # fixed clock rate, gdb (Intel)
|
||||
fixedp: # fixed clock rate, gdb (PowerPC)
|
||||
|
||||
rm -rf em.o
|
||||
cc -arch ppc -mmacosx-version-min=10.4 -DREV=\"${REV}\" -DFIXEDCLOCK -DNOIDLE ${REGS} -g -O0 -DFAST -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/PPC/api;g++ -arch ppc -o em em.o dongle/mx/PPC/api/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
cc -arch ppc -mmacosx-version-min=10.4 -DREV=\"${REV}\" -DFIXEDCLOCK -DNOIDLE ${REGS} -g -O0 -DFAST -c em.c -fobey-inline -mdynamic-no-pic -Idongle/mx/Universal/API/10_6;g++ -arch ppc -o em em.o dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
rm em.o
|
||||
|
||||
|
||||
@ -111,7 +111,7 @@ demol: # demo (limited: 1-2 amlc, 1 disk drive up to 160MB, one PNC node) (Inte
|
||||
|
||||
dongleprog: # utility to program a dongle
|
||||
|
||||
cc -arch ppc -DREV=\"${REV}\" -c dongleprog.c -Idongle/mx/PPC/api;g++ -arch ppc -o dongleprog dongleprog.o dongle/mx/PPC/api/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
cc -arch ppc -DREV=\"${REV}\" -c dongleprog.c -Idongle/mx/Universal/API/10_6;g++ -arch ppc -o dongleprog dongleprog.o dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
rm dongleprog.o
|
||||
|
||||
|
||||
@ -124,7 +124,7 @@ lmserver: # license server
|
||||
lmserverp: # license server
|
||||
|
||||
rm -rf lmserver.o
|
||||
cc -arch ppc -DREV=\"${REV}\" -c lmserver.c -Idongle/mx/PPC/api;g++ -arch ppc lmserver.o -o lmserver dongle/mx/PPC/api/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
cc -arch ppc -DREV=\"${REV}\" -c lmserver.c -Idongle/mx/Universal/API/10_6;g++ -arch ppc lmserver.o -o lmserver dongle/mx/Universal/API/10_6/libmxmac260.a -framework IOKit -framework CoreFoundation
|
||||
rm lmserver.o
|
||||
|
||||
mtread: # Dump a tape to a .tap disk file (Linux only)
|
||||
|
||||
96
notes.2012
Normal file
96
notes.2012
Normal file
@ -0,0 +1,96 @@
|
||||
July 7, 2012
|
||||
Emulator Version 247
|
||||
|
||||
Updates to the Prime Emulator since rev 102:
|
||||
|
||||
- the emulator runs on both PowerPC and Intel CPU architectures.
|
||||
It cannot be built as a "Universal" program (runs on both Intel and
|
||||
PPC); there are separate PPC and Intel versions.
|
||||
|
||||
- the format of the licensing information stored on the dongle has
|
||||
changed. It is possible to run either the old emulator or new
|
||||
emulator with the same dongle, but when switching between old and
|
||||
new, the machine must be connected to the Internet.
|
||||
|
||||
- one copy of the emulator can run on one machine.
|
||||
|
||||
- the dongle is updated as soon as the Prime starts. If your Prime
|
||||
is rebooting very often for some reason, like many times per hour,
|
||||
and is not connected to the Internet, it may deplete the dongle
|
||||
charge sooner than expected. Connect to the Internet if this
|
||||
happens and the dongle will recharge.
|
||||
|
||||
- AMLC handling is much more efficient (uses less CPU time) and
|
||||
allocates resources more fairly among active AMLC lines
|
||||
|
||||
- AMLC telnet negotiation has been fixed, so it's not necessary to use
|
||||
/NOWAIT with Kermit
|
||||
|
||||
- AMLC baud rates have changed from:
|
||||
1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200
|
||||
to:
|
||||
300, 1200, 9600, 19200, 9600*, 38400, 57600, 115200
|
||||
* this is the AMLCLK speed; the default is 9600 like a real Prime
|
||||
|
||||
- AMLCLK can be used to set the 4th (starting at 0) baud rate,
|
||||
like on a real Prime; the default speed is 9600
|
||||
|
||||
- the AMLC config filename has been changed from "amlc" to "amlc.cfg"
|
||||
|
||||
- assigned AMLC lines can be used for TCP/IP printing in amlc.cfg.
|
||||
Here is an example config line in amlc.cfg:
|
||||
010 192.168.1.1:9100
|
||||
This will connect AMLC line 8 (decimal) to this IP address & port.
|
||||
If the printer disconnects, the emulator will try to re-establish
|
||||
the connection the next time there is data to send. If DTR is
|
||||
dropped, for example by T$AMLC, the emulator will drop the connection.
|
||||
When DTR is raised, the emulator will re-establish the connection
|
||||
the next time there is data to send.
|
||||
|
||||
- supports PNC emulation (Prime "RingNet") over TCP/IP
|
||||
|
||||
- support added for old-style Prime T&M hardware diagnostics;
|
||||
new-style DIAG diagnostics already ran. The emulator passes
|
||||
nearly all CPU diagnostics. It is difficult to pass all Prime
|
||||
diagnostics because many of them expect certain microcode bugs
|
||||
to be present for certain models.
|
||||
|
||||
- if a SIGTERM signal is received, the emulator will try to do a
|
||||
graceful Primos shutdown. This is useful when a UPS battery
|
||||
backup is used and the UPS is connected to a USB port: when
|
||||
the UPS battery gets low, OSX will send SIGTERM to all running
|
||||
processes. The emulator sees SIGTERM, passes it on to Primos,
|
||||
and Primos shuts down all disk drives. This prevents disk
|
||||
corruption than can occur when a Prime is abruptly halted.
|
||||
It is also possible to send SIGTERM with: kill -TERM n, where
|
||||
n is the emulator's process id.
|
||||
|
||||
- hitting Ctrl \ on the system console will cause the emulator
|
||||
to shutdown Primos. If this doesn't work for some reason, a
|
||||
second Ctrl \ will cause an immediate halt.
|
||||
|
||||
IMPORTANT NOTE: these last 2 features do not work with the faster,
|
||||
dedicated register PowerPC build, because signals trash the
|
||||
registers.
|
||||
|
||||
- hitting Ctrl ] on the system console caused the old emulator
|
||||
to suspend, and "fg" would continue. But it changed the
|
||||
system console terminal settings. This key has been disabled.
|
||||
|
||||
- the emulator prints a reminder to check error.log if it is
|
||||
not empty. Error and warning messages are written here.
|
||||
|
||||
- indirect loops in address calculations are now limited like on a
|
||||
real Prime. Before, there was no limit, so it was possible to
|
||||
"hang" the emulator with a specially constructed indirect
|
||||
instruction.
|
||||
|
||||
- previously, the -cpuid option took a number from 0 to 44 to
|
||||
indicate the CPU model. Now it also accepts model numbers
|
||||
like 750, 2250, 4050, 9950, etc.
|
||||
|
||||
- Ctrl Y, Ctrl V, and Ctrl O work on the system console
|
||||
|
||||
- several Prime disk drives had track limits that were off
|
||||
by 1 or 2. This could cause seek errors, especially when
|
||||
running Prime diagnostics.
|
||||
Loading…
x
Reference in New Issue
Block a user