1
0
mirror of https://github.com/prirun/p50em.git synced 2026-02-27 08:49:17 +00:00

Commit Graph

  • a992b3de2f set crs[PBH] with 1 32-bit store instead of 2 16-bit stores in main loop + changed order of 3 lines in iget16 to improve performance Jim 2007-09-03 00:00:00 -04:00
  • 8bdffd4e56 moved pio tests to R-mode so that V-mode doesn't check for pio Perf increase from 12.3 MIPS to 12.5 MIPS Jim 2007-09-03 00:00:00 -04:00
  • 3e4c98c296 Added gvp->livereglim to speed up "live register" addressing mode tests Jim 2007-09-02 00:00:00 -04:00
  • fdb4d4ae4c New ea64v, missing memory check, #ifdef FAST Jim 2007-09-02 00:00:00 -04:00
  • 0ea78958b0 Backout ea64v changes, PCL fixes, disabled curtrack/maxtrack check in devdisk Jim 2007-09-01 00:00:00 -04:00
  • 62b8229961 gvp dedicated global variable register, iget16 page cache Jim 2007-08-31 00:00:00 -04:00
  • 2f06bf6081 get/put64 are long long, not double, optimize fetch cycle device poll, ZSTEP do "and" test on instcount so device poll isn't performed on every loop added ZSTEP to eliminate ZGETC/ZPUTC common code various FP changes Jim 2007-08-27 00:00:00 -04:00
  • 818697e797 added stopwatch.h (Jeff) and monitoring throughout Jim 2007-08-27 00:00:00 -04:00
  • 7601dcb718 INCRP, ADDRP macros, code optimization added INCRP macro - now does 32-bit increments of RP for speed added ADDRP macro to return RP incremented by n (CGT) changed globals to static (didn't help speed much - thought it might) moved around some functions changed shift instructions to create bitmask at runtime (faster) manually inlined mathexception (but used inline keyword in later revs) Jim 2007-08-25 00:00:00 -04:00
  • 8c0020d0dd get/put16t, crs/crsl macro, PowerPC register variables, tape bugs changed get16/put16 to get16t/put16t where address trap might occur this eliminates ea<0 test for all other non-trappable get16/put16 calls changed crs & crsl to macros to reference a union vs 2 distinct variables changed crs and RP to be register variables (regs.h) fixed tape drive problems Jim 2007-08-23 00:00:00 -04:00
  • 24e7bfaea0 optimize with Shark, dispatch.h & label arrays, inhcount changed generics from switch table to indirect jumps removed redundant test of inhcount beginning of a long series of optimizations with Shark tool Jim 2007-08-16 00:00:00 -04:00
  • 5bd57fb92a Garth, FP, XED, devmt, 512MB, sys console full duplex sent to Garth around 8/15/07 supports 512MB memory device "terminate" call added XED emulation more FP changes changed devmt to emulate Kennedy tape drive & controller devmt changes to support higher revs / fix bugs Jim 2007-08-07 00:00:00 -04:00
  • 29334a2945 fp.c now fp.h, FP rewrite, more CC macros: CLEARCC, SETEQ, SETLT Jim 2007-06-25 00:00:00 -04:00
  • 31f4e2e22e Removed os.[ch], ignore SIGPIPE, disk model support, 8 drives/controller added CLEARCL macro to clean up code ignore SIGPIPE so broken socket doesn't kill emulator Jim 2007-06-08 00:00:00 -04:00
  • 55ea18c85e register sets, PX, ZTRN, ZED, RTS, I-mode FP, R-mode MPL added "smart" LRU code to handle multiple register sets expanded registers to handle 8 user, 2 system (10 total) turned off various process-exchange changes that were causing failures only zero first 64K of memory added emulation of ZTRN, ZED, and RTS started I-mode floating point make sure R-mode MPL faults to appease DIAG tests Jim 2007-05-26 00:00:00 -04:00
  • f3ae6de902 STTM emulation, fatal() dumps concealed stack frames Jim 2007-05-11 00:00:00 -04:00
  • edc9b077f3 IOTLB & mapio, FP register format, SVC added IOTLB, mapio, and get/put16io macros so rev23 would boot changed device drivers to go through IOTLB, not STLB removed SVC Primos II emulation code changed floating point register format to match memory Jim 2007-05-08 00:00:00 -04:00
  • d306a85352 SSSN serial # hack, share shift procs, DIV/DVL overflow fix hack to patch Primos 23K on the fly for SSSN check added procs for all shifts so 32I can use them fixed DIV & DVL to handle overflow correctly Jim 2007-05-04 00:00:00 -04:00
  • d40c4bad82 more 32I work, zero physical memory on master clear, ICP/DCP changes changed C-pointer ICP/DCP to use goofy/faster? Prime method to pass diags Jim 2007-05-02 00:00:00 -04:00
  • 29949a3390 32I instructions, share instructions between V and I modes huge hunk of 32I instructions generalized SETCC and LCXX macros so I-mode can use them fixed bug in LDC where A-reg was getting trashed at end of string made macros for many instructions so I-mode can use them forgot to close the boot file Jim 2007-04-30 00:00:00 -04:00
  • 7d295a0334 corrected mapva "when to map" test, "fair" devamlc receive processing Jim 2007-04-29 00:00:00 -04:00
  • 319b868345 added ea32i.h include file, ea64v, devamlc, PNC ea64v never needs to return a bit offset added devamlc feature to set room available in user's input buffer misc PNC changes (not working yet) Jim 2007-04-19 00:00:00 -04:00
  • 5bc7332b1f devamlc updates, major tape bug fixed, opcode 1701 is now illegal (for DBG) changed devamlc to always make new connections nonblocking initialize addrlen in devamlc accept code added greeting to new amlc connection Jim 2007-04-07 00:00:00 -04:00
  • 2e6ee3cfe6 telnet server updates, RPH segment tracing specific RPH segment tracing simple telnet server option handling put telnet connection in binary mode Jim 2007-03-31 00:00:00 -04:00
  • 1419a909d5 added get/put16t to handle address trap cases, real-time clock changes devcp supports varying clock tick rates reinit clock if it gets off more than 5 seconds Jim 2007-03-25 00:00:00 -04:00
  • bc8742fb5c removed syscom/ directory, clock auto-sets via VCP interface + SVC always fault - no more emulation of Primos II added support for 102.4 and 3.2us clock ticks Jim 2007-03-21 00:00:00 -04:00
  • d907a5a68a macros for V-mode branch & logicize began PNC driver put16r0 macro shortcuts like get16r0 branch instructions use inline code (macros) instead of gotos devasr blocks when possible lock disk files to prevent corruption from multiple emulators devamlc select to ensure output socket buffer isn't full devamlc partial write error is now a warning vs fatal ECONNRESET test in devamlc (spurious emulator crashes) lots of changes to PNC driver (not working yet) Jim 2007-03-13 00:00:00 -04:00
  • a063854a5c get16r0 shortcut macros to mean "Ring 0" name faults in traces Jim 2007-03-03 00:00:00 -05:00
  • 4f4fc5ff1a removed some #ifdef's change LDLR to load 1 and -1 as constants Jim 2007-03-02 00:00:00 -05:00
  • 80e47600c0 hacking on ZMV to fix Emacs explore bug Jim 2007-03-01 00:00:00 -05:00
  • d13cfe6f6f changes to CAZ Jim 2007-03-01 00:00:00 -05:00
  • 83919548e7 mask some bits in EAFA to fix Emacs Explore bug Jim 2007-03-01 00:00:00 -05:00
  • bd46abe385 insignificant edits Jim 2007-03-01 00:00:00 -05:00
  • f9d4f6f3bb trace improvements, PCL indirect bit offset bug (SAC odd char bug) + added T_TERM for system terminal output tracing added specific user tracing: - 2-digit number after trace (user number) - 6-digit octal number = OWNERL (for devices) added specific procedure tracing major bug in PCL: indirect bit offsets not working, causing SAC JIM:PDALURW to be SAC JIM:PAUW Jim 2007-03-01 00:00:00 -05:00
  • ec2ba390d0 MPY, DIV, devasr, devamlc changes + for R-mode MPY, do the math THEN generate the exception DIV exception handling was wrong, code was wrong too a few devasr changes changed devamlc to always turn off parity instead of flipping it Jim 2007-02-25 00:00:00 -05:00
  • 8f1833c843 move instpermsec updating to devcp (clock device) Jim 2007-02-22 00:00:00 -05:00
  • 4b76c2ea1d changed fprintf(stderr... to TRACE macro writes tracing to a buffered log file instead of stderr added clear of first 32K of physical memory to master clear changed all exit() calls to fatal() calls more changes to the devmt tape driver Jim 2007-02-18 00:00:00 -05:00
  • cad1dab3ee changed boot to handle tape devices, multiple disk controllers lots of changes to tape driver added console log Jim 2007-02-15 00:00:00 -05:00
  • 4703c0b8fd extensive changes to devmt tape controller emulation changed to use iget16 instead of get16 to fetch instructions added test in notify for semaphore overflow - call fatal() Jim 2007-02-07 00:00:00 -05:00
  • 55fc87a975 update instpermsec every 5 seconds to support varying host CPU speeds changes to support accurate real-time clock in devcp changes to backstop idle instruction (BDX) Jim 2007-01-26 00:00:00 -05:00
  • 292af061fc correct SSSN: actually an illegal shift opcode, add --nport option for PNC Jim 2006-03-30 00:00:00 -05:00
  • 03dedb4106 --tport option, support for physical queues (RTQ, ABQ) for DMQ (QAMLC) Jim 2005-10-02 00:00:00 -04:00
  • 09b9592915 WAIT register save shouldn't save all registers like PX does + need to restore interval timer when new process dispatched process level was incorrect when new process dispatched changes setting process abort flag in PCB when timer overflows Jim 2005-09-19 00:00:00 -04:00
  • e20a46e164 address trap changes, trace format change, added warn(), FP fixes Jim 2005-09-12 00:00:00 -04:00
  • 34e057b7b7 hacks for executing R-mode code in registers more PX work reordered instructions (again!) Jim 2005-09-06 00:00:00 -04:00
  • c6a52800f0 32-bit page maps for access to more than 8MB of physical memory optimized ZMV implemented LIOT, PTLB optimized backstop BIX loop to just sleep instead Jim 2005-09-03 00:00:00 -04:00
  • 37882550a8 optimized Zxxx character instructions with ZGETC/ZPUTC macros This is the first version that successfully runs Primos rev 20 - Doug's b drive, but with SAD renamed to prevent IDLE? problem with the disk process. Jim 2005-09-01 00:00:00 -04:00
  • 5729bf7cc1 fault handling must force R0 access for concealed stack manipulations PX get/put must force R0 access for wait/ready list and PCB manipulations restrict macro now accepts a program counter get/put routines also accept a program counter (for ring #) R-mode must use segment number in PBH for address calculations more PCL work more PX work implemented direct ZCM Jim 2005-08-29 00:00:00 -04:00
  • 42732b438e fault update Jim 2005-08-26 00:00:00 -04:00
  • 6146f076fc Enhanced load map routines to print nearest symbol Boots rev 20 (driveb) using --ss 14314, gets an uncorrected disk read error, then hangs. It also exhibits various failures in the file "fail". Jim 2005-08-25 00:00:00 -04:00
  • 8c04dcdd8f STLB changes, ITLB instruction Jim 2005-08-21 00:00:00 -04:00
  • 99337af999 STLB added, boots rev20 up to DWRITE channel order Jim 2005-08-19 00:00:00 -04:00
  • 8648e7426b moved ea64v to an include file ea64v.h implemented stack extensions more PCL/fault work more PX work more FP work Jim 2005-08-19 00:00:00 -04:00
  • b22a6c0e65 more PX, interrupt work, C/L/CC work on overflow, use mathexception to either set C or fault Jim 2005-07-31 00:00:00 -04:00
  • bbd311f048 more interrupt/fault work reordered switches to process more frequent instructions first Jim 2005-07-19 00:00:00 -04:00
  • 7e68427b90 distinguish live register access in SR modes vs VI modes Primos load map handling to enhance traces more PX/interrupt work device initialization feature standard/vectored interrupt handling device polling more C/L bit changes work on BMxx instructions lots of stupid work on JMP/JST - older DIAG routines are broken Jim 2005-07-11 00:00:00 -04:00
  • bdae5dede9 realtime clock, interrupts, process timer, LDC/STC, ZMV, ZMVD, ZFIL, PCL work Jim 2005-06-25 00:00:00 -04:00
  • 5ab1209f0a INCVA macro for segment wraparound, PX work, added --cpuid option Jim 2005-06-16 00:00:00 -04:00
  • 997332c487 first implementation of process exchange, WAIT, NFY + added restricted instruction checking added CALF more PCL work Jim 2005-06-13 00:00:00 -04:00
  • 7f433b9b27 implemented ARGT for interruptable PCL, more work on PCL Jim 2005-06-11 00:00:00 -04:00
  • 32c4116e52 more work on PCL Jim 2005-06-11 00:00:00 -04:00
  • 0b2994585c changed mem[] to be Prime physical memory array, removed direct references + more work on PCL Jim 2005-06-10 00:00:00 -04:00
  • 22f4c22f8f virtual address translation, fault handling code + tracing for address translation, disk I/O, and PCL field address, field length, and load/store character instructions queue instructions more work on setting C & L bits correctly Jim 2005-06-07 00:00:00 -04:00
  • c2c3e8f650 added trace feature and XEC instruction Jim 2005-05-27 00:00:00 -04:00
  • 8daced9db4 expanded CC macros, ea64v changes attempt to set CC on instructions, or use XSETCC macros when not sure Jim 2005-05-26 00:00:00 -04:00
  • 3763da4cbe added live register access to memory get/put functions added live register access flag to effective address calculations first attempt at complete 64V address calculation first RSAV/RRST, STAC/STLC, LPSW, LDLR/STLR, EIO more shift instruction work Jim 2005-05-24 00:00:00 -04:00
  • efc25712b5 defined register file with regs.h began using (get,put)16/32/64 functions to access memory instead of mem[] began using crs[] to access current registers instead of mem[] Jim 2005-05-23 00:00:00 -04:00
  • 655b35b0f9 added table of generic instructions to ignore & log initial disk controller support began FP instruction work Jim 2005-04-23 00:00:00 -04:00
  • ff3fd68935 condition code macros mem array is segment addressable start of boot support use CC macros and BCxx to emulate Bxyy (eg, BFLT) use CC macros and LCxx to emulate Lxyy (eg, LFLT) shift instruction work Jim 2005-04-28 00:00:00 -04:00
  • 9291d9e864 64R mode added, started 64V mode + fixed ea16/32 to use previous pc in address calculations initial support for arithmetic exceptions added more instructions Jim 2005-04-14 00:00:00 -04:00
  • b9e1439d39 Added Prime syscom directory for k key Jim 2005-04-18 00:00:00 -04:00
  • ec56fd7a9e Initial version of Prime emulator for Mac OSX on PowerPC Jim 2005-04-18 00:00:00 -04:00