From c69ebb7bcb17a02230346b2d51495621d2a51574 Mon Sep 17 00:00:00 2001 From: Jeff Parsons Date: Fri, 7 Oct 2016 09:49:02 -0700 Subject: [PATCH] Factored out mapVirtualToPhysical() calls when MMU not enabled, and fixed HALT (it actually halts the CPU now) --- docs/pcx86/examples/pcx86-dbg.js | 996 ++++++++++++++++++++++- docs/pcx86/examples/pcx86.js | 996 ++++++++++++++++++++++- modules/pdp11/bin/oct2hex.js | 7 +- modules/pdp11/lib/cpuops.js | 2 +- modules/pdp11/lib/cpustate.js | 434 +++++----- versions/c1pjs/1.30.1/c1p-dbg.js | 441 +++++++++- versions/c1pjs/1.30.1/c1p.js | 441 +++++++++- versions/pc8080/1.30.1/pc8080-dbg.js | 671 +++++++++++++++- versions/pc8080/1.30.1/pc8080.js | 671 +++++++++++++++- versions/pcx86/1.30.1/pcx86-dbg.js | 996 ++++++++++++++++++++++- versions/pcx86/1.30.1/pcx86.js | 996 ++++++++++++++++++++++- versions/pdpjs/1.30.1/pdp11-dbg.js | 1103 +++++++++++++++++++++----- versions/pdpjs/1.30.1/pdp11.js | 963 ++++++++++++++++++---- 13 files changed, 8150 insertions(+), 567 deletions(-) diff --git a/docs/pcx86/examples/pcx86-dbg.js b/docs/pcx86/examples/pcx86-dbg.js index 83f97359b..7d9c94ec9 100644 --- a/docs/pcx86/examples/pcx86-dbg.js +++ b/docs/pcx86/examples/pcx86-dbg.js @@ -1,4 +1,998 @@ -(function(){var l,aa,ba={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36],21368320:[615,4,17]},p={uo:1,dl:3,vo:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ue:65,Bi:66,Ci:67,Di:68,E:69,Ei:70,Fi:71,Gi:72,Hi:73,Ii:74,Ji:75,Ki:76,Li:77,Mi:78,Ni:79,Oi:80,Q:81,Pi:82, +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + + FPU instruction description excerpts from the PC Magazine "Programmer's Technical Reference: + The Processor and Coprocessor," Copyright 1992 by Ziff-Davis Press (ISBN 1-56276-016-5). + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var l,aa,ba={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36],21368320:[615,4,17]},p={uo:1,dl:3,vo:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ue:65,Bi:66,Ci:67,Di:68,E:69,Ei:70,Fi:71,Gi:72,Hi:73,Ii:74,Ji:75,Ki:76,Li:77,Mi:78,Ni:79,Oi:80,Q:81,Pi:82, Qi:83,Ri:84,Si:85,Ti:86,Ui:87,Vi:88,Wi:89,ng:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,ve:97,ol:98,ql:99,d:100,e:101,Al:102,Bl:103,Cl:104,Dl:105,Tm:106,k:107,Um:108,Ym:109,n:110,en:111,p:112,q:113,r:114,lo:115,t:116,oo:117,po:118,qo:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},ca={};ca[186]=p[";"];ca[187]=p["="];ca[188]=p[","];ca[189]=p["-"];ca[190]=p["."];ca[191]=p["/"];ca[192]=p["`"];ca[219]=p["["];ca[220]=p["\\"];ca[221]=p["]"];ca[222]=p["'"];ca[173]=p["-"];var da={};da[p["1"]]=p["!"]; da[p["2"]]=p["@"];da[p["3"]]=p["#"];da[p["4"]]=p.$;da[p["5"]]=p["%"];da[p["6"]]=p["^"];da[p["7"]]=p["&"];da[p["8"]]=p["*"];da[p["9"]]=p["("];da[p["0"]]=p[")"];da[186]=p[":"];da[187]=p["+"];da[188]=p["<"];da[189]=p._;da[190]=p[">"];da[191]=p["?"];da[192]=p["~"];da[219]=p["{"];da[220]=p["|"];da[221]=p["}"];da[222]=p['"'];da[173]=p._;da[61]=p["+"];da[59]=p[":"]; function ea(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0":62,"?":63,"@":64,Jd:65,wh:66,xh:67,yh:68,E:69,zh:70,Ah:71,Bh:72,Ch:73,Dh:74,Eh:75,Fh:76,Gh:77,Ih:78,Kh:79,Mh:80,Q:81,Ph:82, +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + + FPU instruction description excerpts from the PC Magazine "Programmer's Technical Reference: + The Processor and Coprocessor," Copyright 1992 by Ziff-Davis Press (ISBN 1-56276-016-5). + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var l,ba,ca={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36],21368320:[615,4,17]},n={Tm:1,Sj:3,Um:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Jd:65,wh:66,xh:67,yh:68,E:69,zh:70,Ah:71,Bh:72,Ch:73,Dh:74,Eh:75,Fh:76,Gh:77,Ih:78,Kh:79,Mh:80,Q:81,Ph:82, Rh:83,Th:84,Vh:85,Xh:86,Zh:87,ai:88,ci:89,vf:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Ld:97,bk:98,ck:99,d:100,e:101,mk:102,nk:103,pk:104,qk:105,Bl:106,k:107,Cl:108,Fl:109,n:110,Kl:111,p:112,q:113,r:114,Mm:115,t:116,Pm:117,Qm:118,Rm:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},da={};da[186]=n[";"];da[187]=n["="];da[188]=n[","];da[189]=n["-"];da[190]=n["."];da[191]=n["/"];da[192]=n["`"];da[219]=n["["];da[220]=n["\\"];da[221]=n["]"];da[222]=n["'"];da[173]=n["-"];var p={};p[n["1"]]=n["!"]; p[n["2"]]=n["@"];p[n["3"]]=n["#"];p[n["4"]]=n.$;p[n["5"]]=n["%"];p[n["6"]]=n["^"];p[n["7"]]=n["&"];p[n["8"]]=n["*"];p[n["9"]]=n["("];p[n["0"]]=n[")"];p[186]=n[":"];p[187]=n["+"];p[188]=n["<"];p[189]=n._;p[190]=n[">"];p[191]=n["?"];p[192]=n["~"];p[219]=n["{"];p[220]=n["|"];p[221]=n["}"];p[222]=n['"'];p[173]=n._;p[61]=n["+"];p[59]=n[":"]; function ea(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0= 0 && match.index > iComment) break; @@ -44,14 +44,15 @@ try { console.log("found negative octal value (" + match[2] + "), skipping"); continue; } - var sReplace = match[1] + "0x" + ("0000" + n.toString(16).toUpperCase()).substr(-4) + match[3] + " /*" + match[2] + "*/"; + var cch = (n <= 255? 2 : (n <= 65535? 4 : 8)); + var sReplace = match[1] + "0x" + ("00000000" + n.toString(16).toUpperCase()).substr(-cch) + match[3] + " /*" + match[2] + "*/"; sLine = sLine.substr(0, match.index) + sReplace + sLine.substr(match.index + match[0].length); re.lastIndex = match.index + sReplace.length; asLines[iLine] = sLine; } } sText = ""; - for (var iLine = 0; iLine < asLines.length; iLine++) { + for (iLine = 0; iLine < asLines.length; iLine++) { if (sText) sText += '\n'; sText += asLines[iLine]; } diff --git a/modules/pdp11/lib/cpuops.js b/modules/pdp11/lib/cpuops.js index b5f7a15c7..a3f04d256 100644 --- a/modules/pdp11/lib/cpuops.js +++ b/modules/pdp11/lib/cpuops.js @@ -1101,7 +1101,7 @@ PDP11.opHALT = function(opCode) this.regErr |= PDP11.CPUERR.BADHALT; this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.HALT); } else { - this.endBurst(); + this.stopCPU(); } this.nStepCycles -= 7; }; diff --git a/modules/pdp11/lib/cpustate.js b/modules/pdp11/lib/cpustate.js index db17473df..bc8345d31 100644 --- a/modules/pdp11/lib/cpustate.js +++ b/modules/pdp11/lib/cpustate.js @@ -201,9 +201,24 @@ CPUStatePDP11.prototype.resetRegs = function() this.regMMR3 = 0; // 172516 this.mmuEnable = 0; // MMU enabled for PDP11.ACCESS.READ or PDP11.ACCESS.WRITE this.mmuLastMode = 0; - this.mmuMask = [ // mask to control I&D access for each mode - 0x7, 0x7, 0x7, 0x7 + + this.mapMMR3 = [4,2,0,1]; // map from mode to MMR3 I/D bit + this.mmuMask = 0x3ffff; + this.mmuMemorySize = BusPDP11.IOPAGE_18BIT; + + this.mmuPDR = [ // memory management PDR registers by mode + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], // kernel 0 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], // super 1 + [0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff, 0xffff], // mode 2 with illegal PDRs + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] // user 3 ]; + this.mmuPAR = [ // memory management PAR registers by mode + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], // kernel 0 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], // super 1 + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], // mode 2 (not used) + [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] // user 3 + ]; + /** @type {Array.} */ this.interruptQueue = []; this.opFlags |= PDP11.OPFLAG.INTQ; @@ -213,19 +228,27 @@ CPUStatePDP11.prototype.resetRegs = function() /** * initMemoryAccess() * - * Define getAddr() handler and DSPACE setting appropriate for the current MMU mode, in order to eliminate + * Define handlers and DSPACE setting appropriate for the current MMU mode, in order to eliminate * unnecessary calls to mapVirtualToPhysical(). * + * TODO: We could further optimize readWordFromAddr(), splitting it into readWordFromDSpace() and + * readWordFromISpace(), eliminating the need to OR the addrDSpace bit when we know that bit is zero, + * but that seems like a pretty tiny optimization. + * * @this {CPUStatePDP11} */ CPUStatePDP11.prototype.initMemoryAccess = function() { if (this.mmuEnable) { this.addrDSpace = PDP11.ACCESS.DSPACE; - this.getAddr = this.getAddrVirtual; + this.getAddrByMode = this.getVirtualAddrByMode; + this.readWordFromAddr = this.readWordFromVirtual; + this.writeWordToAddr = this.writeWordToVirtual; } else { this.addrDSpace = 0; - this.getAddr = this.getAddrPhysical; + this.getAddrByMode = this.getPhysicalAddrByMode; + this.readWordFromAddr = this.readWordFromPhysical; + this.writeWordToAddr = this.writeWordToPhysical; } }; @@ -519,7 +542,7 @@ CPUStatePDP11.prototype.getPC = function() */ CPUStatePDP11.prototype.getPCWord = function() { - var data = this.readWordFromVirtual(this.regsGen[PDP11.REG.PC]); + var data = this.readWordFromAddr(this.regsGen[PDP11.REG.PC]); this.advancePC(2); return data; }; @@ -568,17 +591,6 @@ CPUStatePDP11.prototype.setSP = function(addr) this.regsGen[PDP11.REG.SP] = addr & 0xffff; }; -/** - * requestHALT() - * - * @this {CPUStatePDP11} - */ -CPUStatePDP11.prototype.requestHALT = function() -{ - // TODO: There will be more work to do than this.... - this.endBurst(); -}; - /** * interrupt(delay, priority, vector, callback) * @@ -957,8 +969,8 @@ CPUStatePDP11.prototype.trap = function(vector, reason) * Read from kernel D space */ this.mmuMode = 0; - var newPC = this.readWordFromVirtual(vector | PDP11.ACCESS.DSPACE); - var newPSW = this.readWordFromVirtual(((vector + 2) & 0xffff) | PDP11.ACCESS.DSPACE); + var newPC = this.readWordFromAddr(vector | this.addrDSpace); + var newPSW = this.readWordFromAddr(((vector + 2) & 0xffff) | this.addrDSpace); /* * Set new PSW with previous mode @@ -1038,14 +1050,13 @@ CPUStatePDP11.prototype.mapUnibus = function(unibusAddress) * mapVirtualToPhysical(virtualAddress, accessFlags) * * mapVirtualToPhysical() does memory management. It converts a 17 bit I/D - * virtual address to a 22 bit physical address (Note: the eight pseudo addresses - * for handling registers are NOT known at this level - those exist only for higher - * level functions). A real PDP 11/70 memory management unit can be enabled separately - * for read and write for diagnostic purposes. This is handled here by having by having - * an enable mask (mmuEnable) which is tested against the operation access mask - * (accessFlags). If there is no match then the virtual address is simply mapped - * as a 16 bit physical address with the upper page going to the IO address space. - * Significant access mask values used are PDP11.ACCESS.READ and PDP11.ACCESS.WRITE + * virtual address to a 22 bit physical address. A real PDP 11/70 memory management + * unit can be enabled separately for read and write for diagnostic purposes. + * This is handled here by having an enable mask (mmuEnable) which is tested against + * the operation access mask (accessFlags). If there is no match then the virtual + * address is simply mapped as a 16 bit physical address with the upper page going + * to the IO address space. Significant access mask values used are PDP11.ACCESS.READ + * and PDP11.ACCESS.WRITE * * As an aside it turns out that it is the memory management unit that does odd address * and non-existent memory trapping: who knew? :-) I thought these would have been @@ -1059,13 +1070,6 @@ CPUStatePDP11.prototype.mapUnibus = function(unibusAddress) * however something happens to cause a trap then no restore is done as setPSW() * will have been invoked as part of the trap, which will resynchronize mmuMode * - * mmuMask[mmuMode] is used to control whether I/D space is active or not for - * each address space. If separate I/D mapping is enabled then this mask will contain - * 0xF to retain the I/D bit - or if not it will contain 0x7 to mask out the I/D bit. - * - * mmuMap[mmuMode] contains the memory map. Each entry has 32 values; 16 PDRs - * (8 I space pages and 8 D space pages) followed by 16 PARs - * * A PDP 11/70 is different to other PDP 11's in that the highest 18 bit space (017000000 * & above) maps directly to UNIBUS space - including low memory. This doesn't appear to * be particularly useful as it restricts maximum system memory - although it does appear @@ -1085,114 +1089,106 @@ CPUStatePDP11.prototype.mapVirtualToPhysical = function(virtualAddress, accessFl { var page, pdr, physicalAddress, errorMask = 0; - //if (virtualAddress & ~0x1ffff) this.panic(89); // check VA range - //if (!accessFlags) this.panic(93); // must have PDP11.ACCESS.READ or PDP11.ACCESS.WRITE + /* + * Verify that 1) the incoming virtual address is within the 17-bit I/D range, 2) that + * accessFlags is properly set, and 3) that the MMU is enabled (because non-MMU code paths + * should no longer be going through this function; the Bus component is responsible for + * mapping physical addresses appropriately). + */ + this.assert(!(virtualAddress & ~0x1ffff) && accessFlags && (accessFlags & this.mmuEnable)); - if (!(accessFlags & this.mmuEnable)) { - physicalAddress = virtualAddress & 0xffff; // virtual address without MMU is 16 bit (no I&D) - this.mmuLastVirtual = physicalAddress; - if (physicalAddress >= BusPDP11.IOPAGE_VIRT) { - physicalAddress |= BusPDP11.IOPAGE_22BIT; - } + this.mmuLastVirtual = virtualAddress; + + page = virtualAddress >> 13; + if (!(this.regMMR3 & this.mapMMR3[this.mmuMode])) page &= 7; + pdr = this.mmuPDR[this.mmuMode][page]; + physicalAddress = ((this.mmuPAR[this.mmuMode][page] << 6) + (virtualAddress & 0x1fff)) & this.mmuMask; + + if (physicalAddress < this.mmuMemorySize) { /* - * I'm moving this alignment test to the CPU->Bus interfaces that read/write physical words; - * hopefully there are no order dependencies on this test. - * - else { // no max_memory check in 16 bit mode - if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) { - this.regErr |= PDP11.CPUERR.ODDADDR; - this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMEMADDR); - } + * I'm leaving this code here, per Paul's comments above, but it does surprisingly redundant + * to have to perform this check here AND at the physical level (see readWordFromPhysical() and + * writeWordToPhysical()). + */ + if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) { + this.regErr |= PDP11.CPUERR.ODDADDR; + this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMEMADDR); } - */ } else { - this.mmuLastVirtual = virtualAddress; - page = (virtualAddress >> 13) & this.mmuMask[this.mmuMode]; - pdr = this.mmuMap[this.mmuMode][page]; - physicalAddress = ((this.mmuMap[this.mmuMode][page + 16] << 6) + (virtualAddress & 0x1fff)) & 0x3fffff; - if (this.regMMR3 & 0x10) { // if 22 bit MM mode - if (physicalAddress >= BusPDP11.IOPAGE_UNIBUS && physicalAddress < BusPDP11.IOPAGE_22BIT) { - physicalAddress = this.mapUnibus(physicalAddress & 0x3ffff); // 18bit unibus space - } - } else { - physicalAddress &= 0x3ffff; // truncate if only 18 bit mapping + if (!(this.regMMR3 & 0x10)) { if (physicalAddress >= BusPDP11.IOPAGE_18BIT) physicalAddress |= BusPDP11.IOPAGE_22BIT; } - if (physicalAddress < BusPDP11.IOPAGE_UNIBUS) { - if (physicalAddress >= BusPDP11.MAX_MEMORY) { + if (physicalAddress < BusPDP11.IOPAGE_22BIT) { + if (physicalAddress >= BusPDP11.IOPAGE_UNIBUS) { + physicalAddress = this.mapUnibus(physicalAddress & 0x3ffff); // 18bit unibus space + } + if (physicalAddress >= this.mmuMemorySize && physicalAddress < BusPDP11.IOPAGE_22BIT) { this.regErr |= PDP11.CPUERR.NOMEMORY; - this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.NOMEMORY); // KB11-EM does this after ABORT handling - KB11-CM before + this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.NOMEMORY); // KB11-EM does this after ABORT handling - KB11-CM before } - /* - * I'm moving this alignment test to the CPU->Bus interfaces that read/write physical words; - * hopefully there are no order dependencies on this test. - * - if ((physicalAddress & 1) && !(accessFlags & PDP11.ACCESS.BYTE)) { - this.regErr |= PDP11.CPUERR.ODDADDR; - this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMMUADDR); - } - */ } - switch (pdr & 0x7) { - case 1: // read-only with trap - errorMask = 0x1000; // MMU trap - /* falls through */ - case 2: // read-only - pdr |= 0x80; // Set A bit - if (accessFlags & PDP11.ACCESS.WRITE) { - errorMask = 0x2000; // read-only abort - } - break; - case 4: // read-write with read-write trap - errorMask = 0x1000; // MMU trap - /* falls through */ - case 5: // read-write with write trap - if (accessFlags & PDP11.ACCESS.WRITE) { - errorMask = 0x1000; // MMU trap - } - /* falls through */ - case 6: // read-write: set A & W bits - pdr |= ((accessFlags & PDP11.ACCESS.WRITE) ? 0xc0 : 0x80); - break; - default: - errorMask = 0x8000; // non-resident abort - break; - } - if ((pdr & 0x7f08) !== 0x7f00) { // skip checking most common case (hopefully) - if (pdr & 0x8) { // expand downwards - if (pdr & 0x7f00) { - if ((virtualAddress & 0x1fc0) < ((pdr >> 2) & 0x1fc0)) { - errorMask |= 0x4000; // page length error abort - } - } - } else { // expand upwards - if ((virtualAddress & 0x1fc0) > ((pdr >> 2) & 0x1fc0)) { - errorMask |= 0x4000; // page length error abort - } - } - } - // aborts and traps: log FIRST trap and MOST RECENT abort + } - this.mmuMap[this.mmuMode][page] = pdr; - if ((physicalAddress !== 0x3fff7a) || this.mmuMode) { // MMR0 is 017777572 - this.mmuLastMode = this.mmuMode; - this.mmuLastPage = page; + switch (pdr & 0x7) { + case 1: // read-only with trap + errorMask = 0x1000; // MMU trap + /* falls through */ + case 2: // read-only + pdr |= 0x80; // Set A bit + if (accessFlags & PDP11.ACCESS.WRITE) { + errorMask = 0x2000; // read-only abort } - if (errorMask) { - if (errorMask & 0xe000) { - if (this.trapPSW >= 0) errorMask |= 0x80; // Instruction complete - if (!(this.regMMR0 & 0xe000)) { - this.regMMR0 |= errorMask | (this.mmuLastMode << 5) | (this.mmuLastPage << 1); + break; + case 4: // read-write with read-write trap + errorMask = 0x1000; // MMU trap + /* falls through */ + case 5: // read-write with write trap + if (accessFlags & PDP11.ACCESS.WRITE) { + errorMask = 0x1000; // MMU trap + } + /* falls through */ + case 6: // read-write: set A & W bits + pdr |= ((accessFlags & PDP11.ACCESS.WRITE) ? 0xc0 : 0x80); + break; + default: + errorMask = 0x8000; // non-resident abort + break; + } + + if ((pdr & 0x7f08) !== 0x7f00) { // skip checking most common case (hopefully) + if (pdr & 0x8) { // expand downwards + if (pdr & 0x7f00) { + if ((virtualAddress & 0x1fc0) < ((pdr >> 2) & 0x1fc0)) { + errorMask |= 0x4000; // page length error abort } - this.trap(PDP11.TRAP.MMU_FAULT, PDP11.REASON.MAPERROR); } - if (!(this.regMMR0 & 0xf000)) { - //if (physicalAddress < 017772200 || physicalAddress > 017777677) { - if (physicalAddress < 0x3ff480 || physicalAddress > 0x3fffbf) { - this.regMMR0 |= 0x1000; // MMU trap flag - if (this.regMMR0 & 0x0200) { - this.opFlags |= PDP11.OPFLAG.TRAP_MMU; - } + } else { // expand upwards + if ((virtualAddress & 0x1fc0) > ((pdr >> 2) & 0x1fc0)) { + errorMask |= 0x4000; // page length error abort + } + } + } + // aborts and traps: log FIRST trap and MOST RECENT abort + + this.mmuPDR[this.mmuMode][page] = pdr; + if ((physicalAddress !== 0x3fff7a) || this.mmuMode) { // MMR0 is 017777572 + this.mmuLastMode = this.mmuMode; + this.mmuLastPage = page; + } + if (errorMask) { + if (errorMask & 0xe000) { + if (this.trapPSW >= 0) errorMask |= 0x80; // Instruction complete + if (!(this.regMMR0 & 0xe000)) { + this.regMMR0 |= errorMask | (this.mmuLastMode << 5) | (this.mmuLastPage << 1); + } + this.trap(PDP11.TRAP.MMU_FAULT, PDP11.REASON.MAPERROR); + } + if (!(this.regMMR0 & 0xf000)) { + //if (physicalAddress < 017772200 || physicalAddress > 017777677) { + if (physicalAddress < 0x3ff480 || physicalAddress > 0x3fffbf) { + this.regMMR0 |= 0x1000; // MMU trap flag + if (this.regMMR0 & 0x0200) { + this.opFlags |= PDP11.OPFLAG.TRAP_MMU; } } } @@ -1201,7 +1197,7 @@ CPUStatePDP11.prototype.mapVirtualToPhysical = function(virtualAddress, accessFl }; /** - * readByteFromPhysical(physicalAddress) [formerly readByteByAddr] + * readByteFromPhysical(physicalAddress) * * @this {CPUStatePDP11} * @param {number} physicalAddress @@ -1213,34 +1209,7 @@ CPUStatePDP11.prototype.readByteFromPhysical = function(physicalAddress) }; /** - * readWordFromPhysical(physicalAddress) [formerly readWordByAddr] - * - * @this {CPUStatePDP11} - * @param {number} physicalAddress - * @return {number} - */ -CPUStatePDP11.prototype.readWordFromPhysical = function(physicalAddress) -{ - if (physicalAddress & 0x1) { - this.regErr |= PDP11.CPUERR.ODDADDR; - this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMEMADDR); - } - return this.bus.getWord(physicalAddress); -}; - -/** - * readWordFromVirtual(virtualAddress) - * - * @this {CPUStatePDP11} - * @param {number} virtualAddress (input address is 17 bit (I&D)) - */ -CPUStatePDP11.prototype.readWordFromVirtual = function(virtualAddress) -{ - return this.readWordFromPhysical(this.mapVirtualToPhysical(virtualAddress, PDP11.ACCESS.READ_WORD)); -}; - -/** - * writeByteToPhysical(physicalAddress, data) [formerly writeByteByAddr] + * writeByteToPhysical(physicalAddress, data) * * @this {CPUStatePDP11} * @param {number} physicalAddress @@ -1252,22 +1221,6 @@ CPUStatePDP11.prototype.writeByteToPhysical = function(physicalAddress, data) this.bus.setByte(physicalAddress, data & 0xff); }; -/** - * writeWordToPhysical(physicalAddress, data) [formerly writeWordByAddr] - * - * @this {CPUStatePDP11} - * @param {number} physicalAddress - * @param {number} data - */ -CPUStatePDP11.prototype.writeWordToPhysical = function(physicalAddress, data) -{ - if (physicalAddress & 0x1) { - this.regErr |= PDP11.CPUERR.ODDADDR; - this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMEMADDR); - } - this.bus.setWord(physicalAddress, data & 0xffff); -}; - /** * popWord() * @@ -1276,7 +1229,7 @@ CPUStatePDP11.prototype.writeWordToPhysical = function(physicalAddress, data) */ CPUStatePDP11.prototype.popWord = function() { - var result = this.readWordFromVirtual(this.regsGen[6] | PDP11.ACCESS.DSPACE); + var result = this.readWordFromAddr(this.regsGen[6] | this.addrDSpace); this.regsGen[6] = (this.regsGen[6] + 2) & 0xffff; return result; }; @@ -1307,16 +1260,13 @@ CPUStatePDP11.prototype.pushWord = function(data) this.opFlags |= 4; } } - - var physicalAddress = this.mapVirtualToPhysical(virtualAddress | PDP11.ACCESS.DSPACE, PDP11.ACCESS.WRITE_WORD); - this.writeWordToPhysical(physicalAddress, data); + this.writeWordToAddr(virtualAddress, data); }; - /** - * getVirtual(mode, reg, accessFlags) + * getAddress(mode, reg, accessFlags) * - * getVirtual() maps a six bit operand to a 17 bit I/D virtual address space. + * getAddress() maps a six bit operand to a 17 bit I/D virtual address space. * * Instruction operands are six bits in length - three bits for the mode and three * for the register. The 17th I/D bit in the resulting virtual address represents @@ -1343,7 +1293,7 @@ CPUStatePDP11.prototype.pushWord = function(data) * @param {number} accessFlags * @return {number} */ -CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) +CPUStatePDP11.prototype.getAddress = function(mode, reg, accessFlags) { var virtualAddress, stepSize; var addrDSpace = (accessFlags & PDP11.ACCESS.VIRT)? 0 : this.addrDSpace; @@ -1356,9 +1306,9 @@ CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) /* * Mode 0: Registers don't have a virtual address, so trap. * - * NOTE: Most instruction code paths never call getVirtual() when the mode is zero; + * NOTE: Most instruction code paths never call getAddress() when the mode is zero; * JMP and JSR instructions are exceptions, but that's OK, because those are documented to - * "cause an 'illegal' instruction" condition", which we interpret to mean a BUS_ERROR trap. + * "cause an 'illegal' instruction" condition", which presumably means a BUS_ERROR trap. */ case 0: this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.NOREGADDR); @@ -1404,7 +1354,7 @@ CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) stepSize = 2; virtualAddress = this.regsGen[reg]; if (reg !== 7) virtualAddress |= addrDSpace; - virtualAddress = this.readWordFromVirtual(virtualAddress); + virtualAddress = this.readWordFromAddr(virtualAddress); // if (reg === 7) LOG_ADDRESS(virtualAddress); // @#n not operational virtualAddress |= addrDSpace; this.nStepCycles -= (5 + 2); @@ -1428,7 +1378,7 @@ CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) stepSize = -2; virtualAddress = (this.regsGen[reg] - 2) & 0xffff; if (reg !== 7) virtualAddress |= addrDSpace; - virtualAddress = this.readWordFromVirtual(virtualAddress) | addrDSpace; + virtualAddress = this.readWordFromAddr(virtualAddress) | addrDSpace; this.nStepCycles -= (6 + 2); break; @@ -1447,7 +1397,7 @@ CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) case 7: virtualAddress = this.getPCWord(); virtualAddress = (virtualAddress + this.regsGen[reg]) & 0xffff; - virtualAddress = this.readWordFromVirtual(virtualAddress | PDP11.ACCESS.DSPACE) | addrDSpace; + virtualAddress = this.readWordFromAddr(virtualAddress | this.addrDSpace) | addrDSpace; this.nStepCycles -= (7 + 3); return virtualAddress; } @@ -1472,7 +1422,9 @@ CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) }; /** - * getAddrPhysical(mode, reg, accessFlags) + * getPhysicalAddrByMode(mode, reg, accessFlags) + * + * This is a handler set up by initMemoryAccess(). All calls should go through getAddrByMode(). * * @this {CPUStatePDP11} * @param {number} mode @@ -1480,13 +1432,15 @@ CPUStatePDP11.prototype.getVirtual = function(mode, reg, accessFlags) * @param {number} accessFlags * @return {number} */ -CPUStatePDP11.prototype.getAddrPhysical = function(mode, reg, accessFlags) +CPUStatePDP11.prototype.getPhysicalAddrByMode = function(mode, reg, accessFlags) { - return this.getVirtual(mode, reg, accessFlags); + return this.getAddress(mode, reg, accessFlags); }; /** - * getAddrVirtual(mode, reg, accessFlags) + * getVirtualAddrByMode(mode, reg, accessFlags) + * + * This is a handler set up by initMemoryAccess(). All calls should go through getAddrByMode(). * * @this {CPUStatePDP11} * @param {number} mode @@ -1494,9 +1448,73 @@ CPUStatePDP11.prototype.getAddrPhysical = function(mode, reg, accessFlags) * @param {number} accessFlags * @return {number} */ -CPUStatePDP11.prototype.getAddrVirtual = function(mode, reg, accessFlags) +CPUStatePDP11.prototype.getVirtualAddrByMode = function(mode, reg, accessFlags) { - return this.mapVirtualToPhysical(this.getVirtual(mode, reg, accessFlags), accessFlags); + return this.mapVirtualToPhysical(this.getAddress(mode, reg, accessFlags), accessFlags); +}; + +/** + * readWordFromPhysical(physicalAddress) + * + * This is a handler set up by initMemoryAccess(). All calls should go through readWordFromAddr(). + * + * @this {CPUStatePDP11} + * @param {number} physicalAddress + * @return {number} + */ +CPUStatePDP11.prototype.readWordFromPhysical = function(physicalAddress) +{ + if (physicalAddress & 0x1) { + this.regErr |= PDP11.CPUERR.ODDADDR; + this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMEMADDR); + } + return this.bus.getWord(physicalAddress); +}; + +/** + * readWordFromVirtual(virtualAddress) + * + * This is a handler set up by initMemoryAccess(). All calls should go through readWordFromAddr(). + * + * @this {CPUStatePDP11} + * @param {number} virtualAddress (input address is 17 bit (I&D)) + * @return {number} + */ +CPUStatePDP11.prototype.readWordFromVirtual = function(virtualAddress) +{ + return this.readWordFromPhysical(this.mapVirtualToPhysical(virtualAddress, PDP11.ACCESS.READ_WORD)); +}; + +/** + * writeWordToPhysical(physicalAddress, data) + * + * This is a handler set up by initMemoryAccess(). All calls should go through writeWordToAddr(). + * + * @this {CPUStatePDP11} + * @param {number} physicalAddress + * @param {number} data + */ +CPUStatePDP11.prototype.writeWordToPhysical = function(physicalAddress, data) +{ + if (physicalAddress & 0x1) { + this.regErr |= PDP11.CPUERR.ODDADDR; + this.trap(PDP11.TRAP.BUS_ERROR, PDP11.REASON.ODDMEMADDR); + } + this.bus.setWord(physicalAddress, data & 0xffff); +}; + +/** + * writeWordToVirtual(virtualAddress, data) + * + * This is a handler set up by initMemoryAccess(). All calls should go through writeWordToAddr(). + * + * @this {CPUStatePDP11} + * @param {number} virtualAddress (input address is 17 bit (I&D)) + * @param {number} data + */ +CPUStatePDP11.prototype.writeWordToVirtual = function(virtualAddress, data) +{ + this.writeWordToPhysical(this.mapVirtualToPhysical(virtualAddress | PDP11.ACCESS.DSPACE, PDP11.ACCESS.WRITE_WORD), data); }; /** @@ -1519,12 +1537,12 @@ CPUStatePDP11.prototype.readWordFromPrevSpace = function(opCode, accessFlags) src = this.regsAltStack[(this.regPSW >> 12) & 3]; } } else { - var addr = this.getVirtual(mode, reg, PDP11.ACCESS.READ_WORD); + var addr = this.getAddress(mode, reg, PDP11.ACCESS.READ_WORD); if (!(accessFlags & PDP11.ACCESS.DSPACE)) { if ((this.regPSW & 0xf000) !== 0xf000) addr &= 0xffff; } this.mmuMode = (this.regPSW >> 12) & 3; - src = this.readWordFromVirtual(addr | (accessFlags & PDP11.ACCESS.DSPACE)); + src = this.readWordFromAddr(addr | (accessFlags & this.addrDSpace)); this.mmuMode = (this.regPSW >> 14) & 3; } return src; @@ -1552,8 +1570,14 @@ CPUStatePDP11.prototype.writeWordToPrevSpace = function(opCode, accessFlags, dat this.regsAltStack[(this.regPSW >> 12) & 3] = data; } } else { - var addr = this.getVirtual(mode, reg, PDP11.ACCESS.WRITE_WORD); + var addr = this.getAddress(mode, reg, PDP11.ACCESS.WRITE_WORD); if (!(accessFlags & PDP11.ACCESS.DSPACE)) addr &= 0xffff; + /* + * TODO: Consider replacing the following code with writeWordToAddr(), by adding optional mmuMode + * parameters for each of the discrete mapVirtualToPhysical() and writeWordToPhysical() operations, + * because as it stands, this is the only remaining call to mapVirtualToPhysical() outside of our + * initMemoryAccess() handlers. + */ this.mmuMode = (this.regPSW >> 12) & 3; addr = this.mapVirtualToPhysical(addr | (accessFlags & PDP11.ACCESS.DSPACE), PDP11.ACCESS.WRITE); this.mmuMode = (this.regPSW >> 14) & 3; @@ -1577,7 +1601,7 @@ CPUStatePDP11.prototype.readSrcByte = function(opCode) if (!mode) { result = this.regsGen[reg] & 0xff; } else { - result = this.readByteFromPhysical(this.getAddr(mode, reg, PDP11.ACCESS.READ_BYTE)); + result = this.readByteFromPhysical(this.getAddrByMode(mode, reg, PDP11.ACCESS.READ_BYTE)); } return result; }; @@ -1598,7 +1622,7 @@ CPUStatePDP11.prototype.readSrcWord = function(opCode) if (!mode) { result = this.regsGen[reg]; } else { - result = this.readWordFromPhysical(this.getAddr(mode, reg, PDP11.ACCESS.READ_WORD)); + result = this.readWordFromPhysical(this.getAddrByMode(mode, reg, PDP11.ACCESS.READ_WORD)); } return result; }; @@ -1614,7 +1638,7 @@ CPUStatePDP11.prototype.readDstAddr = function(opCode) { var reg = this.dstReg = opCode & PDP11.OPREG.MASK; var mode = this.dstMode = (opCode & PDP11.OPMODE.MASK) >> PDP11.OPMODE.SHIFT; - return this.getVirtual(mode, reg, PDP11.ACCESS.VIRT); + return this.getAddress(mode, reg, PDP11.ACCESS.VIRT); }; /** @@ -1632,7 +1656,7 @@ CPUStatePDP11.prototype.readDstByte = function(opCode) if (!mode) { result = this.regsGen[reg] & 0xff; } else { - result = this.readByteFromPhysical(this.getAddr(mode, reg, PDP11.ACCESS.READ_BYTE)); + result = this.readByteFromPhysical(this.getAddrByMode(mode, reg, PDP11.ACCESS.READ_BYTE)); } return result; }; @@ -1652,7 +1676,7 @@ CPUStatePDP11.prototype.readDstWord = function(opCode) if (!mode) { result = this.regsGen[reg]; } else { - result = this.readWordFromPhysical(this.getAddr(mode, reg, PDP11.ACCESS.READ_WORD)); + result = this.readWordFromPhysical(this.getAddrByMode(mode, reg, PDP11.ACCESS.READ_WORD)); } return result; }; @@ -1674,7 +1698,7 @@ CPUStatePDP11.prototype.updateDstByte = function(opCode, src, fnOp) if (!mode) { this.regsGen[reg] = (this.regsGen[reg] & 0xff00) | fnOp.call(this, src, this.regsGen[reg]); } else { - var addr = this.dstAddr = this.getAddr(mode, reg, PDP11.ACCESS.UPDATE_BYTE); + var addr = this.dstAddr = this.getAddrByMode(mode, reg, PDP11.ACCESS.UPDATE_BYTE); this.writeByteToPhysical(addr, fnOp.call(this, src, this.readByteFromPhysical(addr))); } }; @@ -1696,7 +1720,7 @@ CPUStatePDP11.prototype.updateDstWord = function(opCode, src, fnOp) if (!mode) { this.regsGen[reg] = fnOp.call(this, src, this.regsGen[reg]); } else { - var addr = this.getAddr(mode, reg, PDP11.ACCESS.UPDATE_WORD); + var addr = this.getAddrByMode(mode, reg, PDP11.ACCESS.UPDATE_WORD); this.writeWordToPhysical(addr, fnOp.call(this, src, this.readWordFromPhysical(addr))); } }; @@ -1725,7 +1749,7 @@ CPUStatePDP11.prototype.writeDstByte = function(opCode, data, writeFlags) this.regsGen[reg] = (this.regsGen[reg] & ~0xff) | (data & 0xff); } } else { - this.writeByteToPhysical(this.getAddr(mode, reg, PDP11.ACCESS.WRITE_BYTE), data); + this.writeByteToPhysical(this.getAddrByMode(mode, reg, PDP11.ACCESS.WRITE_BYTE), data); } return data; }; @@ -1747,7 +1771,7 @@ CPUStatePDP11.prototype.writeDstWord = function(opCode, data) if (!mode) { this.regsGen[reg] = data & 0xffff; } else { - this.writeWordToPhysical(this.getAddr(mode, reg, PDP11.ACCESS.WRITE_WORD), data); + this.writeWordToPhysical(this.getAddrByMode(mode, reg, PDP11.ACCESS.WRITE_WORD), data); } return data; }; diff --git a/versions/c1pjs/1.30.1/c1p-dbg.js b/versions/c1pjs/1.30.1/c1p-dbg.js index eed646849..2384c0f1e 100644 --- a/versions/c1pjs/1.30.1/c1p-dbg.js +++ b/versions/c1pjs/1.30.1/c1p-dbg.js @@ -1,4 +1,443 @@ -(function(){var f;function p(a,b,c){var d="";b?8=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function q(a){return p(a,2,!0)}function r(a){return p(a,4,!0)}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var f;function p(a,b,c){var d="";b?8=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function q(a){return p(a,2,!0)}function r(a){return p(a,4,!0)}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"};function da(a){return a.replace(/[&<>"']/g,function(a){return ca[a]})}var ea=Date.now||function(){return+new Date}; function t(a,b){var c=0,d=null;if("object"==typeof resources&&(d=resources[a]))b&&b(a,d,c);else if("function"==typeof resources)resources(a,function(c,d){b&&b(a,c,d)});else{var e=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");e.onreadystatechange=function(){4===e.readyState&&(d=e.responseText,200==e.status||!e.status&&d.length&&"file:"==(window?window.location.protocol:"file:")||(c=e.status||-1),b&&b(a,d,c))};e.open("GET",a,!0);e.send()}} function u(a){window&&window.alert(a)}function v(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function fa(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0=f?48:55),d=String.fromCharCode(f)+d;a>>=4}return(c?"0x":"")+d}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"}; +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var e;function p(a,b,c){var d="";b?8=f?48:55),d=String.fromCharCode(f)+d;a>>=4}return(c?"0x":"")+d}function aa(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"}; function da(a){return a.replace(/[&<>"']/g,function(a){return ca[a]})}var q=Date.now||function(){return+new Date}; function r(a,b){var c=0,d=null;if("object"==typeof resources&&(d=resources[a]))b&&b(a,d,c);else if("function"==typeof resources)resources(a,function(c,d){b&&b(a,c,d)});else{var f=window.XMLHttpRequest?new window.XMLHttpRequest:new window.ActiveXObject("Microsoft.XMLHTTP");f.onreadystatechange=function(){4===f.readyState&&(d=f.responseText,200==f.status||!f.status&&d.length&&"file:"==(window?window.location.protocol:"file:")||(c=f.status||-1),b&&b(a,d,c))};f.open("GET",a,!0);f.send()}} function t(a){window&&window.alert(a)}function u(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var v={init:[],show:[],exit:[]},ea=!1,fa=!1,w=!0;function ga(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function x(a){v.init.push(a)} diff --git a/versions/pc8080/1.30.1/pc8080-dbg.js b/versions/pc8080/1.30.1/pc8080-dbg.js index df08cc6a9..9d6df2ef5 100644 --- a/versions/pc8080/1.30.1/pc8080-dbg.js +++ b/versions/pc8080/1.30.1/pc8080-dbg.js @@ -1,4 +1,673 @@ -(function(){var l,m={me:1,ne:3,oe:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Ub:65,Hc:66,Jc:67,Xb:68,E:69,Mc:70,Nc:71,Oc:72,Pc:73,Wc:74,Xc:75,Zb:76,dd:77,ed:78,gd:79,hd:80,Q:81,od:82,rd:83,xd:84,yd:85,zd:86,Ad:87,Cd:88,Dd:89,Ed:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Ve:97,We:98,Xe:99,d:100,e:101,Ye:102,Ze:103,$e:104,af:105,bf:106,k:107,cf:108, +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var l,m={me:1,ne:3,oe:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Ub:65,Hc:66,Jc:67,Xb:68,E:69,Mc:70,Nc:71,Oc:72,Pc:73,Wc:74,Xc:75,Zb:76,dd:77,ed:78,gd:79,hd:80,Q:81,od:82,rd:83,xd:84,yd:85,zd:86,Ad:87,Cd:88,Dd:89,Ed:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Ve:97,We:98,Xe:99,d:100,e:101,Ye:102,Ze:103,$e:104,af:105,bf:106,k:107,cf:108, df:109,n:110,ef:111,p:112,q:113,r:114,ff:115,t:116,hf:117,jf:118,kf:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126}; function aa(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0>=3;return(c?"0o":"")+d}function t(a,b,c){var d="";b?8=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function ca(a){return t(a,2,!0)} diff --git a/versions/pc8080/1.30.1/pc8080.js b/versions/pc8080/1.30.1/pc8080.js index 398bbecbd..afb784b73 100644 --- a/versions/pc8080/1.30.1/pc8080.js +++ b/versions/pc8080/1.30.1/pc8080.js @@ -1,4 +1,673 @@ -(function(){var k,m={pd:1,qd:3,rd:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,jb:65,Mb:66,Ob:67,mb:68,E:69,Rb:70,Sb:71,Tb:72,Ub:73,ac:74,bc:75,ob:76,ic:77,jc:78,mc:79,nc:80,Q:81,tc:82,wc:83,Bc:84,Cc:85,Dc:86,Ec:87,Gc:88,Hc:89,Ic:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Zd:97,$d:98,ae:99,d:100,e:101,be:102,ce:103,de:104,ee:105,fe:106,k:107,ge:108, +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var k,m={pd:1,qd:3,rd:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,jb:65,Mb:66,Ob:67,mb:68,E:69,Rb:70,Sb:71,Tb:72,Ub:73,ac:74,bc:75,ob:76,ic:77,jc:78,mc:79,nc:80,Q:81,tc:82,wc:83,Bc:84,Cc:85,Dc:86,Ec:87,Gc:88,Hc:89,Ic:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Zd:97,$d:98,ae:99,d:100,e:101,be:102,ce:103,de:104,ee:105,fe:106,k:107,ge:108, he:109,n:110,ie:111,p:112,q:113,r:114,je:115,t:116,ke:117,le:118,me:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126}; function aa(a){var b=16,c;if(a){b||(b=10);var d=a.charAt(0),e=0=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":62,"?":63,"@":64,ue:65,Bi:66,Ci:67,Di:68,E:69,Ei:70,Fi:71,Gi:72,Hi:73,Ii:74,Ji:75,Ki:76,Li:77,Mi:78,Ni:79,Oi:80,Q:81,Pi:82, +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + + FPU instruction description excerpts from the PC Magazine "Programmer's Technical Reference: + The Processor and Coprocessor," Copyright 1992 by Ziff-Davis Press (ISBN 1-56276-016-5). + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var l,aa,ba={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36],21368320:[615,4,17]},p={uo:1,dl:3,vo:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,ue:65,Bi:66,Ci:67,Di:68,E:69,Ei:70,Fi:71,Gi:72,Hi:73,Ii:74,Ji:75,Ki:76,Li:77,Mi:78,Ni:79,Oi:80,Q:81,Pi:82, Qi:83,Ri:84,Si:85,Ti:86,Ui:87,Vi:88,Wi:89,ng:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,ve:97,ol:98,ql:99,d:100,e:101,Al:102,Bl:103,Cl:104,Dl:105,Tm:106,k:107,Um:108,Ym:109,n:110,en:111,p:112,q:113,r:114,lo:115,t:116,oo:117,po:118,qo:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},ca={};ca[186]=p[";"];ca[187]=p["="];ca[188]=p[","];ca[189]=p["-"];ca[190]=p["."];ca[191]=p["/"];ca[192]=p["`"];ca[219]=p["["];ca[220]=p["\\"];ca[221]=p["]"];ca[222]=p["'"];ca[173]=p["-"];var da={};da[p["1"]]=p["!"]; da[p["2"]]=p["@"];da[p["3"]]=p["#"];da[p["4"]]=p.$;da[p["5"]]=p["%"];da[p["6"]]=p["^"];da[p["7"]]=p["&"];da[p["8"]]=p["*"];da[p["9"]]=p["("];da[p["0"]]=p[")"];da[186]=p[":"];da[187]=p["+"];da[188]=p["<"];da[189]=p._;da[190]=p[">"];da[191]=p["?"];da[192]=p["~"];da[219]=p["{"];da[220]=p["|"];da[221]=p["}"];da[222]=p['"'];da[173]=p._;da[61]=p["+"];da[59]=p[":"]; function ea(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0":62,"?":63,"@":64,Jd:65,wh:66,xh:67,yh:68,E:69,zh:70,Ah:71,Bh:72,Ch:73,Dh:74,Eh:75,Fh:76,Gh:77,Ih:78,Kh:79,Mh:80,Q:81,Ph:82, +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + + FPU instruction description excerpts from the PC Magazine "Programmer's Technical Reference: + The Processor and Coprocessor," Copyright 1992 by Ziff-Davis Press (ISBN 1-56276-016-5). + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var l,ba,ca={163840:[40,1,8],184320:[40,1,9],327680:[40,2,8],368640:[40,2,9],737280:[80,2,9],1228800:[80,2,15],1474560:[80,2,18],2949120:[80,2,36],21368320:[615,4,17]},n={Tm:1,Sj:3,Um:26," ":32,"!":33,'"':34,"#":35,$:36,"%":37,"&":38,"'":39,"(":40,")":41,"*":42,"+":43,",":44,"-":45,".":46,"/":47,0:48,1:49,2:50,3:51,4:52,5:53,6:54,7:55,8:56,9:57,":":58,";":59,"<":60,"=":61,">":62,"?":63,"@":64,Jd:65,wh:66,xh:67,yh:68,E:69,zh:70,Ah:71,Bh:72,Ch:73,Dh:74,Eh:75,Fh:76,Gh:77,Ih:78,Kh:79,Mh:80,Q:81,Ph:82, Rh:83,Th:84,Vh:85,Xh:86,Zh:87,ai:88,ci:89,vf:90,"[":91,"\\":92,"]":93,"^":94,_:95,"`":96,Ld:97,bk:98,ck:99,d:100,e:101,mk:102,nk:103,pk:104,qk:105,Bl:106,k:107,Cl:108,Fl:109,n:110,Kl:111,p:112,q:113,r:114,Mm:115,t:116,Pm:117,Qm:118,Rm:119,x:120,y:121,z:122,"{":123,"|":124,"}":125,"~":126},da={};da[186]=n[";"];da[187]=n["="];da[188]=n[","];da[189]=n["-"];da[190]=n["."];da[191]=n["/"];da[192]=n["`"];da[219]=n["["];da[220]=n["\\"];da[221]=n["]"];da[222]=n["'"];da[173]=n["-"];var p={};p[n["1"]]=n["!"]; p[n["2"]]=n["@"];p[n["3"]]=n["#"];p[n["4"]]=n.$;p[n["5"]]=n["%"];p[n["6"]]=n["^"];p[n["7"]]=n["&"];p[n["8"]]=n["*"];p[n["9"]]=n["("];p[n["0"]]=n[")"];p[186]=n[":"];p[187]=n["+"];p[188]=n["<"];p[189]=n._;p[190]=n[">"];p[191]=n["?"];p[192]=n["~"];p[219]=n["{"];p[220]=n["|"];p[221]=n["}"];p[222]=n['"'];p[173]=n._;p[61]=n["+"];p[59]=n[":"]; function ea(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var k; function aa(a,b){var c;if(a){b||(b=10);var d=a.charAt(0),e=0>=3;return(c?"0o":"")+d}function p(a,b,c){var d="";b?8=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d} +d.match(/^[01]+$/):d.match(/^[0-9]+$/))&&!isNaN(f=parseInt(a,b))&&(c=f|0)}return c}function ba(a,b,c){var d="";b?11>=3;return(c?"0o":"")+d}function p(a,b,c){var d="";b?8=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d} function da(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"};function ma(a){return a.replace(/[&<>"']/g,function(a){return ha[a]})}function na(a,b){return(a+" ").slice(0,b)} function oa(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}var pa={0:"NUL",1:"SOH",2:"STX",3:"ETX",4:"EOT",5:"ENQ",6:"ACK",7:"BEL",8:"BS",9:"TAB",11:"VT",12:"FF",13:"CR",14:"SO",15:"SI",16:"DLE",17:"XON",18:"DC2",19:"XOFF",20:"DC4",21:"NAK",22:"SYN",23:"ETB",24:"CAN",25:"EM",26:"SUB",27:"ESC",28:"FS",29:"GS",30:"RS",31:"US"}; function qa(a,b,c){var d=0,e=a.length,f=0;for(c||(c=function(a,b){return a>b?1:a>1,h;h=c(b,a[g]);0a?"0":"")+a}var b=new Date;return b.getFullYear()+"-"+a(b.getMonth()+1)+"-"+a(b.getDate())+" "+a(b.getHours())+":"+a(b.getMinutes())+":"+a(b.getSeconds())} @@ -10,221 +693,221 @@ function t(a){window&&window.alert(a)}function va(a){var b=!1;window&&(b=window. function Ca(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function Da(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}function Ea(a,b,c){function d(){--a;0<=a&&(b()||(a=0));0b?this.Pb=this.id:(this.cc=this.id.substr(0,b),this.Pb=this.id.substr(b+1));this[a]=c;this.v={ready:!1,Bb:!1,dc:!1,ia:!1,error:!1};this.Rb=null;this.v.error=!1;this.K={};this.j=null;this.ka=d||0;x.push(this)}var Ua=void 0,Va={}; +function w(a,b,c,d){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.wc=b.comment;this.cd=b;b=this.id.indexOf(".");0>b?this.Qb=this.id:(this.dc=this.id.substr(0,b),this.Qb=this.id.substr(b+1));this[a]=c;this.v={ready:!1,Eb:!1,ec:!1,ia:!1,error:!1};this.Sb=null;this.v.error=!1;this.L={};this.j=null;this.la=d||0;x.push(this)}var Ua=void 0,Va={}; if(window){Ua||(Ua=window.location.search.substr(1));for(var Wa,Xa=/\+/g,Ya=/([^&=]+)=?([^&]*)/g;Wa=Ya.exec(Ua);)Va[decodeURIComponent(Wa[1].replace(Xa," "))]=decodeURIComponent(Wa[2].replace(Xa," "))}function Za(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b} function y(a,b){b||(b=w);a.prototype=Za(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var $a=window.PCjs.Machines||(window.PCjs.Machines={}),x=window.PCjs.Components||(window.PCjs.Components=[])}else $a={},x=[];function ab(a,b,c){$a[a]&&b&&($a[a][b]=c)}function bb(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b>1)+2;10>this.ca&&(this.ca=10);15>2;this.f=this.Ca-1;this.w=this.F/this.Ca|0;this.Ra=[];this.D=null;this.Eb=this.od;a=new I;Ab(a,this.j);this.X=Array(this.w);for(b=0;b>8:e[2](b)&255):b&1&&(e=d.Ra[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);if(0<=c)return this.j&&F(this.j,64)&&E(this.j,e[5]+".readByte("+J(this.j,b)+"): "+J(this.j,c),!0,!0),c;c=d.Eb(b|4186112,-1,1);this.j&&F(this.j,64)&&E(this.j,"warning: unconverted read access to byte @"+J(this.j,b)+": "+J(this.j,c));return c} -function Cb(a,b,c){var d=!1,e=this.controller,f=e.Ra[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.Ra[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](c):0,f[3](a&255|b<<8,c),d=!0);d?this.j&&F(this.j,64)&&E(this.j,f[5]+".writeByte("+J(this.j,c)+","+J(this.j,b)+")",!0,!0):(e.Eb(c|4186112,b,1),this.j&&F(this.j,64)&&E(this.j,"warning: unconverted write access to byte @"+J(this.j,c)+": "+J(this.j,b)))} -function Db(a,b){var c=-1,d=this.controller;(a=d.Ra[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));if(0<=c)return this.j&&F(this.j,64)&&E(this.j,a[5]+".readWord("+J(this.j,b)+"): "+J(this.j,c),!0,!0),c;c=d.Eb(b|4186112,-1,0);this.j&&F(this.j,64)&&E(this.j,"warning: unconverted read access to word @"+J(this.j,b)+": "+J(this.j,c));return c} -function Eb(a,b,c){var d=!1,e=this.controller;if(a=e.Ra[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d?this.j&&F(this.j,64)&&E(this.j,a[5]+".writeWord("+J(this.j,c)+","+J(this.j,b)+")",!0,!0):(e.Eb(c|4186112,b,0),this.j&&F(this.j,64)&&E(this.j,"warning: unconverted write access to word @"+J(this.j,c)+": "+J(this.j,b)))}k=zb.prototype;k.reset=function(){this.D&&this.D()}; -k.od=function(a,b,c){this.j&&F(this.j,64)&&E(this.j,"warning: unrecognized I/O access("+J(this.j,a)+","+J(this.j,b)+","+c+")");return 0};k.Ja=function(a,b){b||this.reset();return!0}; -function Fb(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.ca;0g&&(n=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.A)return l.Ob+=l.A-f,l.A=f,!0;if(f>=l.A+l.Ob){n=l.size-(f-m);n>g&&(n=g);l.Ob=f-l.A+n;f=m+a.Ca;g-=n;h++;continue}}return Hb(1,f,g)}f=new I(f,n,a.Ca,d,e);Ab(f,a.j,l);a.X[h++]=f;f=m+a.Ca;g-=n}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Ib[d]+" at "+p(b,8,!0)),!0):Hb(2,b,c)} -k.jb=function(a){return this.X[(a&this.g)>>>this.ca].Wb(a&this.f,a)};k.Ha=function(a){return this.X[(a&this.g)>>>this.ca].Bc(a&this.f,a)};function Jb(a,b){return a.X[(b&a.g)>>>a.ca].jc(b&a.f,b)}k.Lb=function(a,b){this.X[(a&this.g)>>>this.ca].$b(a&this.f,b&255,a)};k.nc=function(a,b){this.X[(a&this.g)>>>this.ca].Ic(a&this.f,b&65535,a)}; -function Kb(a){for(var b=0,c=[],d=0;d>1)+2;10>this.ba&&(this.ba=10);15>2;this.f=this.Ba-1;this.w=this.F/this.Ba|0;this.Sa=[];this.D=null;this.Fb=this.xd;a=new I;Ab(a,this.j);this.$=Array(this.w);for(b=0;b>8:e[2](b)&255):b&1&&(e=d.Sa[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);if(0<=c)return this.j&&F(this.j,64)&&E(this.j,e[5]+".readByte("+J(this.j,b)+"): "+J(this.j,c),!0,!0),c;c=d.Fb(b|4186112,-1,1);this.j&&F(this.j,64)&&E(this.j,"warning: unconverted read access to byte @"+J(this.j,b)+": "+J(this.j,c));return c} +function Cb(a,b,c){var d=!1,e=this.controller,f=e.Sa[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.Sa[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](c):0,f[3](a&255|b<<8,c),d=!0);d?this.j&&F(this.j,64)&&E(this.j,f[5]+".writeByte("+J(this.j,c)+","+J(this.j,b)+")",!0,!0):(e.Fb(c|4186112,b,1),this.j&&F(this.j,64)&&E(this.j,"warning: unconverted write access to byte @"+J(this.j,c)+": "+J(this.j,b)))} +function Db(a,b){var c=-1,d=this.controller;(a=d.Sa[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));if(0<=c)return this.j&&F(this.j,64)&&E(this.j,a[5]+".readWord("+J(this.j,b)+"): "+J(this.j,c),!0,!0),c;c=d.Fb(b|4186112,-1,0);this.j&&F(this.j,64)&&E(this.j,"warning: unconverted read access to word @"+J(this.j,b)+": "+J(this.j,c));return c} +function Eb(a,b,c){var d=!1,e=this.controller;if(a=e.Sa[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d?this.j&&F(this.j,64)&&E(this.j,a[5]+".writeWord("+J(this.j,c)+","+J(this.j,b)+")",!0,!0):(e.Fb(c|4186112,b,0),this.j&&F(this.j,64)&&E(this.j,"warning: unconverted write access to word @"+J(this.j,c)+": "+J(this.j,b)))}k=zb.prototype;k.reset=function(){this.D&&this.D()}; +k.xd=function(a,b,c){this.j&&F(this.j,64)&&E(this.j,"warning: unrecognized I/O access("+J(this.j,a)+","+J(this.j,b)+","+c+")");return 0};k.Ia=function(a,b){b||this.reset();return!0}; +function Fb(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.ba;0g&&(n=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.A)return l.Pb+=l.A-f,l.A=f,!0;if(f>=l.A+l.Pb){n=l.size-(f-m);n>g&&(n=g);l.Pb=f-l.A+n;f=m+a.Ba;g-=n;h++;continue}}return Hb(1,f,g)}f=new I(f,n,a.Ba,d,e);Ab(f,a.j,l);a.$[h++]=f;f=m+a.Ba;g-=n}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Ib[d]+" at "+p(b,8,!0)),!0):Hb(2,b,c)} +k.kb=function(a){return this.$[(a&this.g)>>>this.ba].Xb(a&this.f,a)};k.Ga=function(a){return this.$[(a&this.g)>>>this.ba].Gc(a&this.f,a)};function Jb(a,b){return a.$[(b&a.g)>>>a.ba].kc(b&a.f,b)}k.Mb=function(a,b){this.$[(a&this.g)>>>this.ba].ac(a&this.f,b&255,a)};k.oc=function(a,b){this.$[(a&this.g)>>>this.ba].Oc(a&this.f,b&65535,a)}; +function Kb(a){for(var b=0,c=[],d=0;d>5&3;c.xa=a>>1&15;c.Tb=a&257?a&1?6:4:0;Rb(c);a=c.G;a&1|256&&(b=this.b.lb&16?1:2);this.g.pb=this.g.pb&-8|b};k.Yc=function(){return Sb(this.b)};k.rd=function(a){Tb(this.b,a&-1809|Sb(this.b)&1808);this.b.C|=128}; -function Ub(a){var b=a.D,c,d,e,f=b.va>>13&7;"undefined"===typeof b.ra[f]&&(b.ra[f]={cache:[],postProcess:a.cd,drive:f,blocksize:256,mapped:0,maxblock:b.eb[f]*b.da[f],url:"rk"+f+".dsk"});b.P&=-129;switch(b.P>>1&7){case 0:b.Jb=2496;b.oa=0;b.P=128;b.va=0;break;case 1:if((b.va>>4&511)>=b.eb[f]){b.oa|=32832;b.P|=49152;break}if((b.va&15)>=b.da[f]){b.oa|=32800;b.P|=49152;break}c=(b.va>>4&511)*b.da[f]+(b.va&15);d=(b.P&48)<<12|b.Ib;e=65536-b.Kb&65535;Vb(a,b.ra[f],c,d,e);return;case 2:if((b.va>>4&511)>=b.eb[f])b.oa|= -32832,b.P|=49152;else if((b.va&15)>=b.da[f])b.oa|=32800,b.P|=49152;else{c=(b.va>>4&511)*b.da[f]+(b.va&15);d=(b.P&48)<<12|b.Ib;e=65536-b.Kb&65535;a.Xb(b.ra[f],c,d,e);return}}b.Jb=f<<13|b.Jb&8176|b.va%9&15;L(a.b,20,5,144,function(){b.P=b.P&65534|128;return!!(b.P&64)})}k.cd=function(a,b,c,d,e){var f=this.D;f.Ib=d&65535;f.P=f.P&-49|d>>12&48;f.Kb=65536-e&65535;switch(a){case 1:f.oa|=33024;f.P|=49152;break;case 2:f.oa|=33792,f.P|=49152}L(this.b,20,5,144,function(){f.P=f.P&65534|128;return!!(f.P&64)})}; -function Wb(a){var b=a.w,c,d,e,f=b.M>>8&3;b.M&=-2;"undefined"===typeof b.ra[f]&&(b.ra[f]={cache:[],postProcess:a.dd,drive:f,blocksize:128,mapped:1,maxblock:b.eb[f]*b.da[f],url:"rl"+f+".dsk"});switch(b.M>>1&7){case 2:b.Wa&8&&(b.M&=63);b.Wa=b.Jc[f]|b.bb&64;break;case 3:1==(b.fa&3)&&(b.bb=b.fa&4?b.bb+(b.fa&65408)&65408|b.fa<<2&64:b.bb-(b.fa&65408)&65408|b.fa<<2&64,b.fa=b.bb);break;case 4:b.Wa=b.bb;break;case 5:if(b.fa>>6>=b.eb[f]){b.M|=37888;break}if((b.fa&63)>=b.da[f]){b.M|=37888;break}c=(b.fa>>6)* -b.da[f]+(b.fa&63);d=(b.Sa&63)<<16|b.Ab;e=65536-b.Wa&65535;Vb(a,b.ra[f],c,d,e);return;case 6:if(b.fa>>6>=b.eb[f])b.M|=37888;else if((b.fa&63)>=b.da[f])b.M|=37888;else{c=(b.fa>>6)*b.da[f]+(b.fa&63);d=(b.Sa&63)<<16|b.Ab;e=65536-b.Wa&65535;a.Xb(b.ra[f],c,d,e);return}}L(a.b,20,5,112,function(){b.M|=129;return!!(b.M&64)})} -k.dd=function(a,b,c,d,e){var f=this.w;f.Ab=d&65535;f.M=f.M&-49|d>>12&48;f.Sa=d>>16&63;f.fa=~~(c/f.da[b.Ma])<<6|c%f.da[b.Ma];f.bb=f.fa;f.Wa=65536-e&65535;switch(a){case 1:f.M|=33792;break;case 2:f.M|=40960}L(this.b,20,5,112,function(){f.M|=129;return!!(f.M&64)})};function Xb(a){a=a.B;a.S=2176;a.Da=0;a.ta=[4544,4544,4544,4544,4544,4544,4544,4544];a.tb=[0,0,0,0,0,0,0,0];a.mb=a.ub=a.sb=a.$a=a.mc=0} -function gc(a,b){var c=a.B,d,e,f;c.S&=-16513;c.Da&=-2049;c.ta[b]&=-1153;L(a.b,-1,0,172);"undefined"===typeof c.ra[b]&&(c.ra[b]={cache:[],postProcess:a.ed,drive:b,blocksize:256,mapped:0,maxblock:c.bc[0]*c.cb[0]*c.da[0],url:"rp"+b+".dsk"});switch(c.S&63){case 5:c.Zb[b]=c.Qa[b];c.S|=32896;c.ta[b]|=32896;c.mb|=1<=c.bc[0]||c.Ea[b]>>8>=c.cb[0]||(c.Ea[b]&255)>=c.da[0]){c.tb[b]|=1024;c.S|=49152;break}d=(c.Qa[b]*c.cb[0]+(c.Ea[b]>>8))* -c.da[0]+(c.Ea[b]&255);e=(c.$a&63)<<16|c.sb;f=65536-c.ub&65535;Vb(a,c.ra[b],d,e,f);return;case 57:if(c.Qa[b]>=c.bc[0]||c.Ea[b]>>8>=c.cb[0]||(c.Ea[b]&255)>=c.da[0])c.tb[b]|=1024,c.S|=49152;else{d=(c.Qa[b]*c.cb[0]+(c.Ea[b]>>8))*c.da[0]+(c.Ea[b]&255);e=(c.$a&63)<<16|c.sb;f=65536-c.ub&65535;a.Xb(c.ra[b],d,e,f);return}}L(a.b,3,5,172,function(){c.S=c.S&65534|128;c.ta[b]|=128;return!!(c.S&64)})} -k.ed=function(a,b,c,d,e){var f=this.B;f.ub=65536-e&65535;f.sb=d&65535;f.S=f.S&-769|d>>8&768;f.$a=d>>16&63;e=~~(c/f.da[0]);d=~~(e/f.cb[0]);f.Ea[b.Ma]=e%f.cb[0]<<8|c%f.da[0];f.Zb[b.Ma]=f.Qa[b.Ma]=d;f.mb|=1<=b.Uc-1&&(f.ta[b.Ma]|=1024);switch(a){case 1:f.Da|=512;f.S|=49152;break;case 2:f.Da|=2048,f.S|=49152}L(this.b,20,5,172,function(){f.ta[b.Ma]|=128;f.S=f.S&65534|128;return!!(f.S&64)})}; -function hc(a,b,c,d,e,f){var g=~~((f+c.Ta-1)/c.Ta),h=new XMLHttpRequest;2048>g&&d+2048ic(this.b,a.Tc?jc(this.b,c):c,a.cache[b][e])){a.Vb(2,a,b,c,d);return}c+=2;--d}b++}a.Vb(0,a,b,c,d)}; -function Vb(a,b,c,d,e){for(var f,g;0g){b.Vb(2,b,c,d,e);return}b.cache[c][f]=g;d+=2;--e}c++}b.Vb(0,b,c,d,e)}k.reset=function(){this.g.pb=this.g.pb&-120|20;this.f.Va=0;this.D.P=128;this.w.M=128;Xb(this)}; -k.Lc=function(a,b,c){var d,e,f=this.b;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=f.Za&65280:(a&1&&(b<<=8),f.Za=b|255,d=0);break;case 4194298:if(0>b)d=f.lc;else{a&1&&(b<<=8);if(d=b&65024){e=d>>9;do d+=34;while(e>>=1)}f.lc=d;f.C|=2}break;case 4194294:if(70!==f.ib)return f.L(4,222);0>b?d=f.J:d=f.J=0;break;case 4194292:if(70!==f.ib)return f.L(4,224);d=1;break;case 4194290:if(70!==f.ib)return f.L(4,226);d=0;break;case 4194288:if(70!==f.ib)return f.L(4,228);d=61183;break;case 4194296:0<= -b&&!(a&1)&&(b&=255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==f.ib)return f.L(4,232);e=a-4194272>>1;0>b?d=f.gc[e]:(d=M(this,f.gc[e],a,b,c),0<=d&&(f.gc[e]=d));break;case 4194254:return a&1?f.O>>14&1?(0<=b&&(f.u[6]=b),d=f.u[6]):(0<=b&&(f.ya[3]=b),d=f.ya[3]):f.O>>14&0?(0<=b&&(f.u[6]=b),d=f.u[6]):(0<=b&&(f.ya[1]=b),d=f.ya[1]),d;case 4194252:case 4194250:case 4194248:return e=a&7,f.O&2048?(0<=b&&(f.u[e]=b),d=f.u[e]):(0<=b&&(f.Pa[e]= -b),d=f.Pa[e]),d;case 4194246:return a&1?(0<=b&&(f.u[7]=b),d=f.u[7]):f.O>>14&0?(0<=b&&(f.u[6]=b),d=f.u[6]):(0<=b&&(f.ya[0]=b),d=f.ya[0]),d;case 4194244:case 4194242:case 4194240:return e=a&7,f.O&2048?(0<=b&&(f.Pa[e]=b),d=f.Pa[e]):(0<=b&&(f.u[e]=b),d=f.u[e]),d;default:return f.J|=16,f.L(4,124)}break;case 4194176:e=a>>1&31;d=M(this,f.na[3][e],a,b,c);0<=d&&(f.na[3][e]=d,f.na[3][e&15]&=65295);break;case 4194112:switch(a&-2){case 4194174:d=M(this,f.Yb,a,b,c);0<=d&&(f.Yb=d);break;case 4194172:d=f.Ya;d&65280&& -(d=(d<<8|d>>8)&65535);break;case 4194168:0>b?d=this.g.nd&65535:(d=M(this,this.g.data,a,b,c),0<=d&&(this.g.data=d));break;default:return f.J|=16,f.L(4,126)}break;case 4194048:e=this.D;switch(a&-2){case 4194048:d=M(this,e.Jb,a,b,c);0<=d&&(e.Jb=d);break;case 4194050:d=M(this,e.oa,a,b,c);0<=d&&(e.oa=d);break;case 4194052:d=M(this,e.P,a,b,c);0<=b&&0<=d&&(e.P=d&-36993|e.P&36992,e.P&1&&Ub(this));break;case 4194054:d=M(this,e.Kb,a,b,c);0<=d&&(e.Kb=d);break;case 4194056:d=M(this,e.Ib,a,b,c);0<=d&&(e.Ib=d); -break;case 4194058:d=M(this,e.va,a,b,c);0<=d&&(e.va=d);break;case 4194060:break;case 4194062:d=M(this,e.Cc,a,b,c);0<=d&&(e.Cc=d);break;default:return f.J|=16,f.L(4,128)}break;case 4193728:var g=this.B;e=g.Da&7;switch(a&-2){case 4193728:d=M(this,g.S,a,b,c);0<=b&&0<=d&&(g.$a=g.$a&60|d>>8&3,g.S=d&17279|g.S&34944|2048,d&1&&g.S&128?gc(this,e):192==(d&192)&&L(f,0,5,172));break;case 4193730:d=M(this,g.ub,a,b,c);0<=d&&(g.ub=d);break;case 4193732:d=M(this,g.sb,a,b,c);0<=d&&(g.sb=d&65534);break;case 4193734:d= -M(this,g.Ea[e],a,b,c);0<=d&&(g.Ea[e]=d&7967);break;case 4193736:d=M(this,g.Da,a,b,c);0<=d&&(g.Da=d&63|g.Da&65472,d&128&&Xb(this));break;case 4193738:d=g.ta[e];break;case 4193740:d=g.tb[e];break;case 4193742:d=M(this,g.mb,a,b,c);0<=d&&(g.mb=d&255);break;case 4193744:d=g.kd[e];break;case 4193746:d=M(this,g.Dc,a,b,c);0<=d&&(g.Dc=d);break;case 4193748:d=M(this,g.Ec[e],a,b,c);0<=d&&(g.Ec[e]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=g.ld[e];break;case 4193754:d=M(this,g.Fc[e],a,b,c);0<=d&& -(g.Fc[e]=d);break;case 4193756:d=M(this,g.Qa[e],a,b,c);0<=d&&(g.Qa[e]=d&511);break;case 4193758:g.Zb[e]=g.Qa[e];d=g.Zb[e];break;case 4193760:d=g.hd[e];break;case 4193762:d=g.jd[e];break;case 4193764:d=g.fd[e];break;case 4193766:d=g.gd[e];break;case 4193768:d=M(this,g.$a,a,b,c);0<=d&&(g.$a=d&63,g.S=g.S&-769|(d&3)<<8);break;case 4193770:d=M(this,g.mc,a,b,c);0<=d&&(g.mc=d);break;default:return f.J|=16,f.L(4,132)}break;case 4192512:e=this.w;switch(a&-2){case 4192512:d=M(this,e.M,a,b,c);0<=b&&0<=d&&(e.Sa= -e.Sa&60|d>>4&3,e.M=e.M&-1023|d&1022,e.M&128||Wb(this));break;case 4192514:d=M(this,e.Ab,a,b,c);0<=d&&(e.Ab=d&65534);break;case 4192516:d=M(this,e.fa,a,b,c);0<=d&&(e.fa=d);break;case 4192518:d=M(this,e.Wa,a,b,c);0<=d&&(e.Wa=d);break;case 4192520:d=M(this,e.Sa,a,b,c);0<=d&&(e.Sa=d&63,e.M=e.M&-49|(e.Sa&3)<<4);break;default:return f.J|=16,f.L(4,134)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=f.lb:(d=M(this,f.lb,a,b,c),0<=d&&(70!==f.ib&&(d&=-49),f.lb=d,f.Ub[0]=d&4?15:7,f.Ub[1]=d&2?15:7,f.Ub[3]= -d&1?15:7,f.Tb&&(e=2,f.lb&16&&(e=1),this.g.pb=this.g.pb&-8|e)));break;default:return f.J|=16,f.L(4,136)}break;case 4191424:e=a>>1&31;d=M(this,f.na[0][e],a,b,c);0<=d&&(f.na[0][e]=d,f.na[0][e&15]&=65295);break;case 4191360:e=a>>1&31;d=M(this,f.na[1][e],a,b,c);0<=d&&(f.na[1][e]=d,f.na[1][e&15]&=65295);break;case 4190400:case 4190336:if(70!==f.ib)return f.L(4,234);e=a>>2&31;d=f.Mb[e];a&2&&(d>>=16);d&=65535;0<=b&&(d=M(this,d,a,b,c),0<=d&&(f.Mb[e]=a&2?d<<16|f.Mb[e]&65535:f.Mb[e]&4294901760|d&65534));break; -case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)d=Nb[a>>1&255];else return f.J|=16,f.L(4,138);break;default:return f.J|=16,f.L(4,142)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)");return d};var lc={},Qb=(lc[65382]=[null,null,K.prototype.Wc,K.prototype.pd,"LKS"],lc[65402]=[null,null,K.prototype.Xc,K.prototype.qd,"MMR0"],lc[65534]=[null,null,K.prototype.Yc,K.prototype.rd,"PSW"],lc); -La(function(){for(var a=D(document,"pdp11","device"),b=0;b>1),this.b=new Int32Array(this.D,0,c>>2),sc(this,oc?tc:uc);else{this.b=Array(c>>2);for(a=0;a>2),b=0;b>8,c)},Z:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},la:function(a){var b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8},wa:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<< -a)|b<>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<>8);this.Ua=!0},T:function(a,b){if(this.j&&null!=this.A){var c=this.j;zc(c,this.A+a,1,c.T)&&c.ja(!0)}return this.ic(a,b)},ea:function(a,b){if(this.j&&null!=this.A){var c=this.j;zc(c,this.A+a,2,c.T)&&c.ja(!0)}return this.jc(a,b)},qa:function(a,b,c){if(this.j&&null!=this.A){var d=this.j;zc(d,this.A+a,1,d.G)&&d.ja(!0)}this.f?this.K(a, -b,c):this.ac(a,b,c)},za:function(a,b,c){if(this.j&&null!=this.A){var d=this.j;zc(d,this.A+a,2,d.G)&&d.ja(!0)}this.f?this.K(a,b,c):this.qc(a,b,c)},R:function(a){return this.w[a]},Y:function(a,b){a=this.w[a];this.j&&F(this.j,128)&&E(this.j,"Memory.readByte("+J(this.j,b)+"): "+J(this.j,a),!0);return a},$:function(a){return this.B.getUint16(a,!0)},ha:function(a,b){a=this.H[a>>1];this.j&&F(this.j,128)&&E(this.j,"Memory.readWord("+J(this.j,b)+"): "+J(this.j,a),!0);return a},ma:function(a,b){this.w[a]=b; -this.Ua=!0},ua:function(a,b,c){this.w[a]=b;this.Ua=!0;this.j&&F(this.j,128)&&E(this.j,"Memory.writeByte("+J(this.j,c)+","+J(this.j,b)+")",!0)},xa:function(a,b){this.B.setUint16(a,b,!0);this.Ua=!0},Aa:function(a,b,c){this.H[a>>1]=b;this.Ua=!0;this.j&&F(this.j,128)&&E(this.j,"Memory.writeWord("+J(this.j,c)+","+J(this.j,b)+")",!0)}};function Ab(a,b,c){a.j=b;a.g=a.F=0;c&&((a.g=c.g)&&yc(a,xc,!1),(a.F=c.F)&&wc(a,xc,!1))} -function Ac(a,b){b?--a.F||(a.$b=a.f?a.K:a.ac,a.Ic=a.f?a.G:a.qc):--a.g||(a.Wb=a.ic,a.Bc=a.jc)}function wc(a,b,c){c&&a.F||(a.$b=!a.f&&b[1]||a.K,a.Ic=!a.f&&b[3]||a.G);if(c||void 0===c)a.ac=b[1]||a.K,a.qc=b[3]||a.G}function yc(a,b,c){c&&a.g||(a.Wb=b[0]||a.I,a.Bc=b[2]||a.N);if(c||void 0===c)a.ic=b[0]||a.I,a.jc=b[2]||a.N}function sc(a,b){b||(b=Bc);yc(a,b,void 0);wc(a,b,void 0)}var Bc=[],vc=[I.prototype.Z,I.prototype.wa,I.prototype.la,I.prototype.Ba],xc=[I.prototype.T,I.prototype.qa,I.prototype.ea,I.prototype.za]; -if(kb)var uc=[I.prototype.R,I.prototype.ma,I.prototype.$,I.prototype.xa],tc=[I.prototype.Y,I.prototype.ua,I.prototype.ha,I.prototype.Aa];function Cc(a,b){w.call(this,"CPU",a,Cc,1);var c=a.multiplier||1;this.Aa=a.cycles||b;this.Xa=c;this.ab=Math.round(this.Aa/1E4)/100;this.kb=this.ab*this.Xa;this.v.ga=!1;this.v.oc=!1;this.v.yb=a.autoStart;this.v.uc=!1;this.v.ob=!1;this.Fb=this.ha=0;this.Gb=a.csStart;this.qb=a.csInterval;this.rb=a.csStop;this.N=[];this.Sb=this.md.bind(this);G(this)}y(Cc); -var Dc=["power","reset"];k=Cc.prototype;k.Oa=function(a,b,c,d){this.D=a;this.F=b;this.j=d;for(b=0;b=a.ha&&(a.ha+=a.qb,c=!0);0<=a.rb&&a.rb<=Jc(a)&&(a.qb=a.rb=-1,Gc(a),a.ja(),c=!0);c&&a.i(Jc(a)+" cycles: checksum="+p(a.Fb))}} -function Kc(a,b,c,d){if(a.K[b]){void 0===c&&(jb(a,"Value for "+b+" is invalid"),a.ja());var e=a.j&&a.j.qa||8;c=!a.v.ga||a.v.uc?8==e?ca(c,d):p(c,d):"--------".substr(0,d||4);a.K[b].textContent!=c&&(a.K[b].textContent=c)}} -k.pa=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.K[b]=c;a=!0;break;case "run":this.K[b]=c;c.onclick=function(){var a;if(a=d.D)if(a=d.D,a.v.ia)a=!0;else{var b=null,c,h=bb(a.id);for(c=0;ca.Y/a.kb?b=1:d=!0;a.Xa=b;b=a.ab*a.Xa;if(a.kb!=b){a.kb=b;b=a.kb.toFixed(2)+"Mhz";var e=a.K.setSpeed;e&&(e.textContent=b);a.i("target speed: "+b)}c&&a.D&&a.D.Nb()}Mc(a,a.T);a.T=0;a.R=ra();a.Z=0;Nc(a);return d}function Ob(a,b){var c=a.N.length;a.N.push([-1,b]);return c}function Pb(a,b,c){0<=b&&ba.N[b][0]&&(c*=a.Aa*a.Xa/1E3,a.N[b][0]=c)}function gd(a,b){for(var c=a.N.length-1;0<=c;c--){var d=a.N[c];0>d[0]||b>d[0]&&(b=d[0])}return b} -function hd(a,b){for(var c=a.N.length-1;0<=c;c--){var d=a.N[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}}function id(a){a.$-=a.b;a.b=0} -k.md=function(){if(this.v.ga){this.nb>=this.Aa&&Nc(this,!0);this.ua=0;this.za=ra();if(this.Z){var a=this.za-this.Z;a>this.Db&&(this.R+=a,this.R>this.za&&(this.R=this.za))}try{do{var b=gd(this,this.v.ob?1:this.Ba);try{this.wb(b)}catch(e){if("number"!=typeof e)throw e;}var c=this.$-this.b;hd(this,c);this.ua+=c;this.T+=c;Mc(this,0,!0);Ic(this,c);this.la-=c;if(0>=this.la){this.la+=this.Ba;15<=++this.Qb&&(this.D&&this.D.Fa(),this.Qb=0);break}}while(this.v.ga)}catch(e){this.ja();N(this);this.D&&this.D.stop(ra(), -Jc(this));jb(this,e.stack||e.message);return}if(this.v.ga){a=setTimeout;b=this.Sb;this.Z=ra();c=this.Db;this.ua&&(c=Math.round(c*this.ua/this.Ba));var c=c-(this.Z-this.za),d=this.Z-this.R;d&&(this.Y=Math.round(this.T/(10*d))/100,864E5<=d&&(this.ea=0,Lc(this)));if(0>c||this.Yc&&(this.R-=c),c=0;this.nb+=this.ua;this.Z+=c;a(b,c)}}}; -k.vb=function(a){if(ib(this))return!1;if(this.v.ga)return this.i(this.toString()+" busy"),!1;Lc(this);this.v.ga=!0;this.v.oc=!0;this.qa&&this.qa.start();var b=this.K.run;b&&(b.textContent="Halt");this.D&&(a&&this.D.Nb(!0),this.D.start(this.R,Jc(this)));N(this,!0);setTimeout(this.Sb,0);return!0};k.wb=function(){return 0}; -k.ja=function(a){if(this.v.ga){id(this);Mc(this,this.T);this.T=0;this.v.ga=!1;this.qa&&this.qa.stop();var b=this.K.run;b&&(b.textContent="Run");this.D&&this.D.stop(ra(),Jc(this));N(this)}this.v.complete=a};function N(a,b){a.D&&a.D.Fa(b)} -function jd(a){this.Vc=+a.model||1170;this.hc=a.resetAddr||0;Cc.call(this,a,6666667);this.Cb=0;this.decode=kd.bind(this);this.U=65536;this.V=32768;this.aa=65535;this.W=32768;this.O=15;this.u=[0,0,0,0,0,0,0,this.hc];this.Pa=[0,0,0,0,0,0];this.ya=[0,0,0,0];this.xa=this.B=0;this.na=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Mb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.gc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.g=this.f=this.fb=this.H=this.I=this.C=0;this.ib=70;this.ma=-1;ld(this);this.v.complete=this.v.Nc=!1}y(jd,Cc);k=jd.prototype;k.reset=function(){this.v.ga&&this.ja();ld(this);Fc(this);this.v.error=!1;this.parent.reset.call(this)}; -function ld(a){a.Za=255;a.J=0;a.lc=0;a.G=0;a.Ya=0;a.Yb=0;a.lb=0;a.Tb=0;a.wa=0;a.Ub=[7,7,7,7];a.w=[];a.C|=2;Rb(a)}function Rb(a){a.Tb?(a.zb=65536,a.ba=a.Qc):(a.zb=0,a.ba=a.Pc)}k.wc=function(){return 0};k.save=function(){var a=new O(this);a.set(0,[]);a.set(1,[this.ea,this.Xa]);a.set(2,Kb(this.F));return a.data()}; -k.restore=function(a){var b=a[1];this.ea=b[1];Lc(this,b[3]);a:{b=this.F;a=a[2];var c;for(c=0;cb){a.w[f].La-=b;break}b-=a.w[f].La}a.w.splice(f+1,0,{La:b,Ac:c<<5&224,Hc:d,fc:e})}a.C|=2}function Sb(a){return a.O=a.O&63728|a.Na()|od(a)|nd(a)|md(a)} -function Tb(a,b){a.W=b<<12;a.aa=~b&4;a.V=b<<14;a.U=b<<16;if((b^a.O)&2048)for(var c=a.Pa.length;0<=--c;){var d=a.u[c];a.u[c]=a.Pa[c];a.Pa[c]=d}a.B=b>>14&3;c=a.O>>14&3;a.B!=c&&(a.ya[c]=a.u[6],a.u[6]=a.ya[a.B]);a.C|=2;a.O=b}function P(a,b){a.C&128||(a.W=a.aa=b,a.V=0)}function sd(a,b,c){a.C&128||(a.W=a.aa=a.U=b,a.V=c||0)}function td(a,b,c,d){a.C&128||(a.W=a.aa=a.U=b,a.V=(c^b)&(d^b))}function ud(a,b){a.C&128||(a.W=a.aa=a.U=b,a.V=a.W^a.U>>1)} -function vd(a,b,c,d){a.C&128||(a.W=a.aa=a.U=b,a.V=(c^d)&(d^b))}k.L=function(a){var b=!1;0>this.ma?this.ma=Sb(this):this.B||(a=4,b=!0);this.G&57344||(this.Ya=63222,this.Yb=a);this.B=0;var c=qd(this,a|65536),d=qd(this,a+2&65535|65536);Tb(this,d&-12289|this.ma>>2&12288);b&&(this.J|=4,this.u[6]=4);wd(this,this.ma);wd(this,this.u[7]);rd(this,c);this.C&=-113;this.ma=-1;throw a;};function xd(a){var b=yd(a),c=yd(a)&-1793;a.O&49152&&(c=c&-225|a.O&63712);rd(a,b);Tb(a,c);a.C&=-17} -function jc(a,b){var c=b>>13&31;31>c?a.lb&32&&(b=a.Mb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} -function zd(a,b,c){var d,e,f,g=0;if(c&a.Tb){d=b>>13&a.Ub[a.B];e=a.na[a.B][d];f=(a.na[a.B][d+16]<<6)+(b&8191)&4194303;a.lb&16?3932160<=f&&4186112>f&&(f=jc(a,f&262143)):(f&=262143,253952<=f&&(f|=4186112));3932160>f&&3915776<=f&&(a.J|=32,a.L(4,12));switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.na[a.B][d]=e;if(4194170!== -f||a.B)a.wa=a.B,a.xa=d;g&&(g&57344&&(0<=a.ma&&(g|=128),a.G&57344||(a.G=a.G|g|a.wa<<5|a.xa<<1),a.L(168,16)),a.G&61440||!(4191360>f||4194239c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.u[c];7!==c&&(e|=g);e=qd(a,e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.u[c]+f&65535;7!==c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.u[c]-2&65535;7!==c&&(e|=g);e=qd(a,e)|g; -a.b-=8;break;case 6:return e=pd(a),e=e+a.u[c]&65535|g,a.b-=6,e;case 7:return e=pd(a),e=e+a.u[c]&65535,e=qd(a,e|65536)|g,a.b-=10,e}a.u[c]=a.u[c]+f&65535;!g||a.G&57344||(a.Ya=a.Ya<<8|f<<3&248|c);6==c&&!a.B&&d&4&&0>=f&&(a.u[6]<=a.Za||65534<=a.u[6])&&(a.u[6]<=a.Za-32?(a.J|=4,a.u[6]=4,a.L(4,24)):(a.J|=8,a.C|=64));return e}k.Pc=function(a,b,c){return Ad(this,a,b,c)};k.Qc=function(a,b,c){return zd(this,Ad(this,a,b,c),c)}; -function Bd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?(d=Ad(a,b,d,2),c&65536||61440!==(a.O&61440)&&(d&=65535),a.B=a.O>>12&3,c=qd(a,d|c&65536),a.B=a.O>>14&3):c=6!=d||(a.O>>2&12288)===(a.O&12288)?a.u[d]:a.ya[a.O>>12&3];return c}function Cd(a,b,c,d){a.G&57344||(a.Ya=22);var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=Ad(a,b,e,4),c&65536||(e&=65535),a.B=a.O>>12&3,e=zd(a,e|c&65536,4),a.B=a.O>>14&3,ic(a,e,d)):6!=e||(a.O>>2&12288)===(a.O&12288)?a.u[e]=d:a.ya[a.O>>12&3]=d} -function Dd(a,b){b>>=6;var c=a.I=b&7;(b=a.H=(b&56)>>3)?(c=a.ba(b,c,3),a=a.F.jb(c)):a=a.u[c]&255;return a}function Ed(a,b){var c;b>>=6;var d=a.I=b&7;(b=a.H=(b&56)>>3)?c=kc(a,a.ba(b,d,2)):c=a.u[d];return c}function Fd(a,b){var c=a.f=b&7;b=a.g=(b&56)>>3;return Ad(a,b,c,8)}function Gd(a,b){var c=a.f=b&7;(b=a.g=(b&56)>>3)?(c=a.ba(b,c,3),a=a.F.jb(c)):a=a.u[c]&255;return a}function Hd(a,b){var c,d=a.f=b&7;(b=a.g=(b&56)>>3)?c=kc(a,a.ba(b,d,2)):c=a.u[d];return c} -function Q(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.fb=a.ba(b,e,7),c=d.call(a,c,a.F.jb(e)),e&1&&a.b--,a.F.Lb(e,c&255)):a.u[e]=a.u[e]&65280|d.call(a,c,a.u[e])}function R(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.ba(b,e,6),ic(a,e,d.call(a,c,kc(a,e)))):a.u[e]=d.call(a,c,a.u[e])}function Id(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(d=a.ba(b,e,5),d&1&&a.b--,a.F.Lb(d,c&255)):a.u[e]=c?d&1?c<<24>>24&65535:a.u[e]&-256|c&255:a.u[e]&-256;return c} -function Jd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?ic(a,a.ba(b,d,4),c):a.u[d]=c&65535;return c}function T(a,b,c){c&&(rd(a,a.u[7]+(b<<24>>23)),a.b-=2);a.b-=3} -k.wb=function(a){this.v.complete=!0;var b=this.v.Nc=this.j&&Kd(this.j),c=a?this.v.oc?0:1:-1;this.v.oc=!1;this.$=this.b=a;do{if(b){if(Ld(this.j,this.u[7],c)){this.ja();break}c=1}if(this.C&&(this.C&112&&(this.C&32?this.L(168,28):this.C&64?this.L(4,30):this.C&16&&this.L(12,32),this.C&=-113),this.C&7))if(this.C&2){this.C&=-3;a=null;for(var d=this.lc&224,e=this.w.length;0<=--e;){if(0d&&(d=this.w[e].Ac,a=this.w[e],this.w.splice(e,1))}d>(this.O&224)&&(this.C&4&&(this.u[7]=this.u[7]+2&65535,this.C&=-5),a?this.L(a.Hc,26):this.L(160,26))}else this.C&1&&this.C++;this.G&57344||(this.Ya=0,this.Yb=this.u[7]);this.C=this.C&7|this.O&16;this.decode(pd(this))}while(0>1|b<<16;ud(this,a);return a&65535}function Rd(a,b){a=b&2048|b>>1|b<<8;ud(this,a<<8);return a&255}function Sd(a,b){a=b&~a;P(this,a);return a}function Td(a,b){a=b&~a;P(this,a<<8);return a}function Ud(a,b){a|=b;P(this,a);return a} -function Vd(a,b){a|=b;P(this,a<<8);return a}function Wd(a,b){a=~b|65536;sd(this,a);return a&65535}function Xd(a,b){a=~b|256;sd(this,a<<8);return a&255}function Yd(a,b){a=b-a;this.C&128||(this.W=this.aa=a,this.V=b&(b^a));return a&65535}function Zd(a,b){a=b-a;var c=a<<8;b<<=8;this.C&128||(this.W=this.aa=c,this.V=b&(b^c));return a&255}function $d(a,b){a=b+a;this.C&128||(this.W=this.aa=a,this.V=a&(b^a));return a&65535} -function ae(a,b){a=b+a;var c=a<<8;this.C&128||(this.W=this.aa=c,this.V=c&(b<<8^c));return a&255}function be(a,b){a=-b;sd(this,a,a&b&32768);return a&65535}function ce(a,b){a=-b;sd(this,a<<8,(a&b&128)<<8);return a&255}function de(a,b){a=b<<1|this.U>>16&1;ud(this,a);return a&65535}function ee(a,b){a=b<<1|this.U>>16&1;ud(this,a<<8);return a&255}function fe(a,b){a=(this.U&65536|b)>>1|b<<16;ud(this,a);return a&65535}function ge(a,b){a=((this.U&65536)>>8|b)>>1|b<<8;ud(this,a<<8);return a&255} -function he(a,b){var c=b-a;vd(this,c,a,b);return c&65535}function ie(a,b){var c=b-a;vd(this,c<<8,a<<8,b<<8);return c&255}function je(a,b){this.C&128||(this.W=this.aa=b&65280,this.V=this.U=0);return(b<<8|b>>8)&65535}function ke(a,b){a^=b;P(this,a);return a&65535} -function le(a){var b=Hd(this,a);a=a>>6&7;var c=this.u[a];c&32768&&(c|=4294901760);this.U=this.V=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.V=32768)}this.u[a]=c&65535;this.W=this.aa=c;this.b-=(this.g?6:7)+b} -function me(a){var b=Hd(this,a);a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.U=this.V=0;b&=63;if(b&32){b=64-b;32>b-1;this.U=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.u[a|1]=d&65535;this.W=d>>16;this.aa=d>>16|d;this.b-=(this.g?6:7)+b}function U(a){a&1&&(this.U=0);a&2&&(this.V=0);a&4&&(this.aa=1);a&8&&(this.W=0);this.b-=5} -function ne(a){var b=Hd(this,a);if(b){a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.U=this.V=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.u[a]=d&65535,this.u[a|1]=c-d*b&65535,this.aa=d>>16|d,this.W=d>>16):(this.V=32768,this.aa=d>>15|d,this.W=c>>16,-1===b&&65534===this.u[a]&&(this.u[a]=this.u[a|1]=1));this.b-=53}else this.aa=this.W=0,this.V=32768,this.U=65536,this.b-=7}var oe=[0,7,7,10,7,11,9,13];function pe(a){var b=this.b;rd(this,Fd(this,a));this.b=b-oe[this.g]} -var qe=[0,14,14,17,14,18,16,20];function re(a){var b=this.b,c=Fd(this,a);a=a>>6&7;wd(this,this.u[a]);this.u[a]=this.u[7];rd(this,c);this.b=b-qe[this.g]}var se=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17],te=[7,13,13,17,14,18,17,21];function ue(a){var b=Hd(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.u[a];c&32768&&(c|=-65536);b=~~(b*c);this.u[a]=b>>16&65535;this.u[a|1]=b&65535;this.C&128||(this.W=b>>16,this.aa=this.W|b,this.V=0,this.U=-32768>b||32767>6;if(this.u[b]=this.u[b]-1&65535)rd(this,this.u[7]-((a&63)<<1)),this.b+=1;this.b-=6}function Qe(a){R(this,a,0,je);this.b-=this.g?9:3+(7==this.f?2:0)}function Re(a){R(this,a,Ed(this,a),ke);this.b-=this.g?9:3+(7==this.f?2:0)}function W(){this.L(8,6)}function kd(a){Se[a>>12].call(this,a)} -var Se=[function(a){Te[a>>8&15].call(this,a)},function(a){var b=Ed(this,a),c=this.b;P(this,Jd(this,a,b));this.b=c-se[(this.H?8:0)+this.g]+(7!=this.f||this.g?0:2)},function(a){var b=Ed(this,a);a=Hd(this,a);vd(this,b-a,a,b);this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){P(this,Ed(this,a)&Hd(this,a));this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){R(this,a,Ed(this,a),Sd);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f? -2:0)},function(a){R(this,a,Ed(this,a),Ud);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){R(this,a,Ed(this,a),Md);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){Ue[a>>8&15].call(this,a)},function(a){Ve[a>>8&15].call(this,a)},function(a){var b=Dd(this,a);P(this,Id(this,a,b,1)<<8);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){var b=Dd(this,a)<<8;a=Gd(this,a)<<8;vd(this,b-a,a,b);this.b-=this.g? -4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){P(this,(Dd(this,a)&Gd(this,a))<<8);this.b-=this.g?4+(this.I&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){Q(this,a,Dd(this,a),Td);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){Q(this,a,Dd(this,a),Vd);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){R(this,a,Ed(this,a),he);this.b-=this.g?9+(this.I&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},W],Te= -[function(a){We[a>>4&15].call(this,a)},function(a){T(this,a,!0)},function(a){T(this,a,!od(this))},function(a){T(this,a,od(this))},function(a){T(this,a,!this.Na()==!nd(this))},function(a){T(this,a,!this.Na()!=!nd(this))},function(a){T(this,a,!od(this)&&!this.Na()==!nd(this))},function(a){T(this,a,od(this)||!this.Na()!=!nd(this))},re,re,function(a){Xe[a>>6&3].call(this,a)},function(a){Ye[a>>6&3].call(this,a)},function(a){Ze[a>>6&3].call(this,a)},function(a){$e[a>>6&3].call(this,a)},W,W],Xe=[function(a){sd(this, -Jd(this,a,0));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,Wd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,1,$d);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,1,Yd);this.b-=this.g?9:3+(7==this.f?2:0)}],Ye=[function(a){R(this,a,0,be);this.b-=this.g?11:6},function(a){R(this,a,md(this)?1:0,Md);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,md(this)?1:0,he);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=Hd(this,a);sd(this,a);this.b-=this.g?4:3+(7==this.f? -2:0)}],Ze=[function(a){R(this,a,0,fe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,de);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,Qd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){R(this,a,0,Od);this.b-=this.g?9:3+(7==this.f?2:0)}],$e=[function(a){a=this.u[7]+((a&63)<<1)&65535;var b=qd(this,a|65536);rd(this,this.u[5]);this.u[6]=a+2&65535;this.u[5]=b;this.b-=8},function(a){a=Bd(this,a,0);wd(this,a);P(this,a);this.b-=11},function(a){var b=yd(this),c=this.b;Cd(this,a, -0,b);P(this,b);this.b=c-te[this.g]},function(a){P(this,Jd(this,a,this.Na?65535:0));this.b-=this.g?9:3+(7==this.f?2:0)}],We=[function(a){af[a&15].call(this,a)},W,W,W,pe,pe,pe,pe,function(a){if(a&8)this.L(8,6);else{var b=yd(this);a&=7;rd(this,this.u[a]);this.u[a]=b;this.b-=9}},function(a){a&8?(this.O&49152||(this.O=this.O&-2017|(a&7)<<5,this.C|=1),this.b-=5):this.L(8,6)},function(a){bf[a&15].call(this,a)},function(a){cf[a&15].call(this,a)},Qe,Qe,Qe,Qe],af=[function(){this.O&49152?(this.J|=128,this.L(4, -3)):id(this);this.b-=7},function(){this.C|=4;this.u[7]=this.u[7]+-2&65535;this.b-=3},function(){xd(this);this.C|=this.O&16;this.b-=13},function(){this.L(12,1);this.b-=5},function(){this.L(16,4);this.b-=25},function(){this.O&49152||(ld(this),this.F.reset());this.b-=667},function(){xd(this);this.b-=13},W,W,W,W,W,W,W,W,W],bf=[ve,function(){this.U=0;this.b-=5},function(){this.V=0;this.b-=5},U,function(){this.aa=1;this.b-=5},U,U,U,function(){this.W=0;this.b-=5},U,U,U,U,U,U,U],cf=[ve,function(){this.U= -65536;this.b-=5},function(){this.V=32768;this.b-=5},V,function(){this.aa=0;this.b-=5},V,V,V,function(){this.W=32768;this.b-=5},V,V,V,V,V,V,V],Ue=[ue,ue,ne,ne,le,le,me,me,Re,Re,W,W,W,W,we,we],Ve=[function(a){T(this,a,!this.Na())},function(a){T(this,a,this.Na())},function(a){T(this,a,!md(this)&&!od(this))},function(a){T(this,a,md(this)||od(this))},function(a){T(this,a,!nd(this))},function(a){T(this,a,nd(this))},function(a){T(this,a,!md(this))},function(a){T(this,a,md(this))},function(){this.L(24,2); -this.b-=25},function(){this.L(28,5);this.b-=5},function(a){df[a>>6&3].call(this,a)},function(a){ef[a>>6&3].call(this,a)},function(a){ff[a>>6&3].call(this,a)},function(a){gf[a>>6&3].call(this,a)},W,W],df=[function(a){sd(this,Id(this,a,0));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,0,Xd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,1,ae);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,1,Zd);this.b-=this.g?9:3+(7==this.f?2:0)}],ef=[function(a){Q(this,a,0,ce);this.b-= -this.g?11:6},function(a){Q(this,a,md(this)?1:0,Nd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,md(this)?1:0,ie);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=Gd(this,a);sd(this,a<<8);this.b-=this.g?4:3+(7==this.f?2:0)}],ff=[function(a){Q(this,a,0,ge);this.b-=this.g?9+(this.fb&1):3+(7==this.f?2:0)},function(a){Q(this,a,0,ee);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,0,Rd);this.b-=this.g?9+(this.fb&1):3+(7==this.f?2:0)},function(a){Q(this,a,0,Pd);this.b-=this.g?9:3+(7== -this.f?2:0)}],gf=[W,function(a){a=Bd(this,a,65536);wd(this,a);P(this,a);this.b-=11},function(a){var b=yd(this),c=this.b;Cd(this,a,65536,b);P(this,b);this.b=c-te[this.g]},W];function hf(a){w.call(this,"ROM",a,hf);this.f=null;this.B=a.addr;this.g=a.size;this.G=a.writable;this.D=a.alias;this.w=a.file;this.H=da(this.w);if(this.w){a=this.w;var b=ea(this.H);"json"!=b&&"hex"!=b&&(a=ga()+"/api/v1/dump?file="+this.w+"&format=bytes&decimal=true");var c=this;ua(a,null,!0,function(a,b,f){jf(c,a,b,f)})}}y(hf); -hf.prototype.Oa=function(a,b,c,d){this.F=b;this.b=c;this.j=d;kf(this)};hf.prototype.Ja=function(){if(this.Ka){if(this.j){var a=this.j,b=this.id,c=this.B,d=this.g,e=this.Ka,f=[],g;for(g in e){var h=e[g];"number"==typeof h&&(e[g]=h={o:h});var l=h.o,m=h.a;if(void 0!==l){var n=f,l=[l>>>0,g],r=qa(n,l,a.sc);0>r&&n.splice(-(r+1),0,l)}m&&(h.a=m.replace(/''/g,'"'))}a.H.push({xd:b,A:c,Sc:d,Ka:e,rc:f})}delete this.Ka}return!0};hf.prototype.Ia=function(){return!0}; -function jf(a,b,c,d){if(d)a.sa("Unable to load system ROM (error "+d+": "+b+")");else{ab(a.cc,b,c);var e;if("["==c.charAt(0)||"{"==c.charAt(0))try{var f,g,h=eval("("+c+")");if(f=h.bytes)a.f=f;else if(f=h.words)for(a.f=Array(2*f.length),g=e=0;e>8&255;else if(f=h.data)for(a.f=Array(4*f.length),g=e=0;e>8&255,a.f[g++]=f[e]>>16&255,a.f[g++]=f[e]>>24&255;else a.f=h;a.Ka=h.symbols;if(!a.f.length){t("Empty ROM: "+ -b);return}if(1==a.f.length){t(a.f[0]);return}}catch(l){a.sa("ROM data error: "+l.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.f=Array(b.length),e=0;e>>d.ca].ac(e&d.f,a.f[c]&255,e);a.j&&a.j.g--}b=!0}else b=!1;if(b){b=[];"number"==typeof a.D?b.push(a.D):null!=a.D&&a.D.length&&(b=a.D);for(c=0;c>> -e.ca;0>>=e.ca;0=b)a.preventDefault&&a.preventDefault(),64");if(2==b.length){var c=oa(b[0]);if(c!=this.Pb)return;b=oa(b[1]);if(this.I=cb(b)){var d=this.I.exports;if(d){var e=d.connect;e&&e.call(this.I);if(this.N=d.receiveData){this.status(this.cc+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.Ja=function(a,b){if(!b)if(this.zc(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; -k.Ia=function(a){return a?this.save():!0};k.reset=function(){pf(this)};k.save=function(){var a=new O(this);a.set(0,[]);return a.data()};k.restore=function(){return pf(this)};function pf(a){a.Y=0;a.f=0;a.g=128;a.B=[];return!0}k.kc=function(a){if("number"==typeof a)this.B.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.Z||8,c=a-this.H%a,this.Z&&(b=na("",c)));this.R&&!this.H&&c&&(b=String.fromCharCode(this.R)+b);this.w.value+=b;this.w.scrollTop=this.w.scrollHeight;this.H+=c}else if(null!=this.G){if(10==a||1024<=this.G.length)this.i(this.G), -this.G="";10!=a&&(this.G+=String.fromCharCode(a))}this.g&=-129;L(this.b,100,4,52,this.T)}};var qf={},of=(qf[65392]=[null,null,Y.prototype.$c,Y.prototype.td,"RCSR"],qf[65394]=[null,null,Y.prototype.Zc,Y.prototype.sd,"RBUF"],qf[65396]=[null,null,Y.prototype.bd,Y.prototype.vd,"XCSR"],qf[65398]=[null,null,Y.prototype.ad,Y.prototype.ud,"XBUF"],qf);La(function(){for(var a=D(document,"pdp11","serial"),b=0;b=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};rf.prototype.xc=function(){return-1};rf.prototype.yc=function(){}; -function tf(a,b,c,d){if(c)if(b){0>a.B&&a.w.length&&(a.B=0);if(0>a.B||b!=a.w[a.B])a.w.splice(0,0,b),a.B=0;a.B--}else a.$?b="end":b=a.w[a.B+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(oa(b.substring(c,f))),c=f+1}}return a} -function uf(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break; +0,3024,3103,65514,34562,0,264,8197,33779,5003,2574,32337,260,0,258,5579,12,6080,448,6081,450,6084,452,116,2,6084,65400,17860,65024,21956,62976,38848,65401,3200,161,76,0,16944,10797];k=Nb.prototype;k.Na=function(a,b,c,d){this.F=b;this.b=c;this.j=d;var e=this;this.f.qc=Pb(this.b,function(){e.f.Wa|=128;e.f.Wa&64&&(K(e.b,0,6,64),Qb(e.b,e.f.qc,1E3/60))});Lb(b,this,Rb);Mb(b,this.reset.bind(this),this.Rc.bind(this));G(this)};k.ed=function(){var a=this.f.Wa;this.f.Wa&=-129;return a}; +k.yd=function(a){this.f.Wa=a;a&64&&Qb(this.b,this.f.qc,1E3/60);this.f.Wa=a&-129};k.fd=function(){var a=this.b;return a.G&62337|a.za<<5|a.Aa<<1};k.zd=function(a){var b=4,c=this.b;c.G=a&=62337;c.za=a>>5&3;c.Aa=a>>1&15;c.ic=a&257?a&1?6:4:0;Sb(c);a=c.G;a&1|256&&(b=this.b.$a&16?1:2);this.g.rb=this.g.rb&-8|b};k.gd=function(){return Tb(this.b)};k.Ad=function(a){Ub(this.b,a&-1809|Tb(this.b)&1808);this.b.C|=128}; +function Vb(a){var b=a.D,c,d,e,f=b.va>>13&7;"undefined"===typeof b.ra[f]&&(b.ra[f]={cache:[],postProcess:a.md,drive:f,blocksize:256,mapped:0,maxblock:b.gb[f]*b.ca[f],url:"rk"+f+".dsk"});b.P&=-129;switch(b.P>>1&7){case 0:b.Kb=2496;b.na=0;b.P=128;b.va=0;break;case 1:if((b.va>>4&511)>=b.gb[f]){b.na|=32832;b.P|=49152;break}if((b.va&15)>=b.ca[f]){b.na|=32800;b.P|=49152;break}c=(b.va>>4&511)*b.ca[f]+(b.va&15);d=(b.P&48)<<12|b.Jb;e=65536-b.Lb&65535;ec(a,b.ra[f],c,d,e);return;case 2:if((b.va>>4&511)>=b.gb[f])b.na|= +32832,b.P|=49152;else if((b.va&15)>=b.ca[f])b.na|=32800,b.P|=49152;else{c=(b.va>>4&511)*b.ca[f]+(b.va&15);d=(b.P&48)<<12|b.Jb;e=65536-b.Lb&65535;a.Yb(b.ra[f],c,d,e);return}}b.Kb=f<<13|b.Kb&8176|b.va%9&15;K(a.b,20,5,144,function(){b.P=b.P&65534|128;return!!(b.P&64)})}k.md=function(a,b,c,d,e){var f=this.D;f.Jb=d&65535;f.P=f.P&-49|d>>12&48;f.Lb=65536-e&65535;switch(a){case 1:f.na|=33024;f.P|=49152;break;case 2:f.na|=33792,f.P|=49152}K(this.b,20,5,144,function(){f.P=f.P&65534|128;return!!(f.P&64)})}; +function fc(a){var b=a.w,c,d,e,f=b.M>>8&3;b.M&=-2;"undefined"===typeof b.ra[f]&&(b.ra[f]={cache:[],postProcess:a.nd,drive:f,blocksize:128,mapped:1,maxblock:b.gb[f]*b.ca[f],url:"rl"+f+".dsk"});switch(b.M>>1&7){case 2:b.Xa&8&&(b.M&=63);b.Xa=b.Pc[f]|b.eb&64;break;case 3:1==(b.ea&3)&&(b.eb=b.ea&4?b.eb+(b.ea&65408)&65408|b.ea<<2&64:b.eb-(b.ea&65408)&65408|b.ea<<2&64,b.ea=b.eb);break;case 4:b.Xa=b.eb;break;case 5:if(b.ea>>6>=b.gb[f]){b.M|=37888;break}if((b.ea&63)>=b.ca[f]){b.M|=37888;break}c=(b.ea>>6)* +b.ca[f]+(b.ea&63);d=(b.Ta&63)<<16|b.Db;e=65536-b.Xa&65535;ec(a,b.ra[f],c,d,e);return;case 6:if(b.ea>>6>=b.gb[f])b.M|=37888;else if((b.ea&63)>=b.ca[f])b.M|=37888;else{c=(b.ea>>6)*b.ca[f]+(b.ea&63);d=(b.Ta&63)<<16|b.Db;e=65536-b.Xa&65535;a.Yb(b.ra[f],c,d,e);return}}K(a.b,20,5,112,function(){b.M|=129;return!!(b.M&64)})} +k.nd=function(a,b,c,d,e){var f=this.w;f.Db=d&65535;f.M=f.M&-49|d>>12&48;f.Ta=d>>16&63;f.ea=~~(c/f.ca[b.La])<<6|c%f.ca[b.La];f.eb=f.ea;f.Xa=65536-e&65535;switch(a){case 1:f.M|=33792;break;case 2:f.M|=40960}K(this.b,20,5,112,function(){f.M|=129;return!!(f.M&64)})};function gc(a){a=a.B;a.T=2176;a.Ca=0;a.ta=[4544,4544,4544,4544,4544,4544,4544,4544];a.wb=[0,0,0,0,0,0,0,0];a.mb=a.xb=a.vb=a.bb=a.nc=0} +function hc(a,b){var c=a.B,d,e,f;c.T&=-16513;c.Ca&=-2049;c.ta[b]&=-1153;K(a.b,-1,0,172);"undefined"===typeof c.ra[b]&&(c.ra[b]={cache:[],postProcess:a.od,drive:b,blocksize:256,mapped:0,maxblock:c.cc[0]*c.fb[0]*c.ca[0],url:"rp"+b+".dsk"});switch(c.T&63){case 5:c.$b[b]=c.Pa[b];c.T|=32896;c.ta[b]|=32896;c.mb|=1<=c.cc[0]||c.Da[b]>>8>=c.fb[0]||(c.Da[b]&255)>=c.ca[0]){c.wb[b]|=1024;c.T|=49152;break}d=(c.Pa[b]*c.fb[0]+(c.Da[b]>>8))* +c.ca[0]+(c.Da[b]&255);e=(c.bb&63)<<16|c.vb;f=65536-c.xb&65535;ec(a,c.ra[b],d,e,f);return;case 57:if(c.Pa[b]>=c.cc[0]||c.Da[b]>>8>=c.fb[0]||(c.Da[b]&255)>=c.ca[0])c.wb[b]|=1024,c.T|=49152;else{d=(c.Pa[b]*c.fb[0]+(c.Da[b]>>8))*c.ca[0]+(c.Da[b]&255);e=(c.bb&63)<<16|c.vb;f=65536-c.xb&65535;a.Yb(c.ra[b],d,e,f);return}}K(a.b,3,5,172,function(){c.T=c.T&65534|128;c.ta[b]|=128;return!!(c.T&64)})} +k.od=function(a,b,c,d,e){var f=this.B;f.xb=65536-e&65535;f.vb=d&65535;f.T=f.T&-769|d>>8&768;f.bb=d>>16&63;e=~~(c/f.ca[0]);d=~~(e/f.fb[0]);f.Da[b.La]=e%f.fb[0]<<8|c%f.ca[0];f.$b[b.La]=f.Pa[b.La]=d;f.mb|=1<=b.$c-1&&(f.ta[b.La]|=1024);switch(a){case 1:f.Ca|=512;f.T|=49152;break;case 2:f.Ca|=2048,f.T|=49152}K(this.b,20,5,172,function(){f.ta[b.La]|=128;f.T=f.T&65534|128;return!!(f.T&64)})}; +function ic(a,b,c,d,e,f){var g=~~((f+c.Ua-1)/c.Ua),h=new XMLHttpRequest;2048>g&&d+2048this.b.Ab(a.Zc?jc(this.b,c):c,a.cache[b][e])){a.Wb(2,a,b,c,d);return}c+=2;--d}b++}a.Wb(0,a,b,c,d)}; +function ec(a,b,c,d,e){for(var f,g;0g){b.Wb(2,b,c,d,e);return}b.cache[c][f]=g;d+=2;--e}c++}b.Wb(0,b,c,d,e)}k.reset=function(){this.g.rb=this.g.rb&-120|20;this.f.Wa=0;this.D.P=128;this.w.M=128;gc(this)}; +k.Rc=function(a,b,c){var d,e,f=this.b;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=f.ab&65280:(a&1&&(b<<=8),f.ab=b|255,d=0);break;case 4194298:if(0>b)d=f.mc;else{a&1&&(b<<=8);if(d=b&65024){e=d>>9;do d+=34;while(e>>=1)}f.mc=d;f.C|=2}break;case 4194294:if(70!==f.jb)return f.K(4,222);0>b?d=f.I:d=f.I=0;break;case 4194292:if(70!==f.jb)return f.K(4,224);d=1;break;case 4194290:if(70!==f.jb)return f.K(4,226);d=0;break;case 4194288:if(70!==f.jb)return f.K(4,228);d=61183;break;case 4194296:0<= +b&&!(a&1)&&(b&=255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==f.jb)return f.K(4,232);e=a-4194272>>1;0>b?d=f.hc[e]:(d=L(this,f.hc[e],a,b,c),0<=d&&(f.hc[e]=d));break;case 4194254:return a&1?f.O>>14&1?(0<=b&&(f.u[6]=b),d=f.u[6]):(0<=b&&(f.ya[3]=b),d=f.ya[3]):f.O>>14&0?(0<=b&&(f.u[6]=b),d=f.u[6]):(0<=b&&(f.ya[1]=b),d=f.ya[1]),d;case 4194252:case 4194250:case 4194248:return e=a&7,f.O&2048?(0<=b&&(f.u[e]=b),d=f.u[e]):(0<=b&&(f.Oa[e]= +b),d=f.Oa[e]),d;case 4194246:return a&1?(0<=b&&(f.u[7]=b),d=f.u[7]):f.O>>14&0?(0<=b&&(f.u[6]=b),d=f.u[6]):(0<=b&&(f.ya[0]=b),d=f.ya[0]),d;case 4194244:case 4194242:case 4194240:return e=a&7,f.O&2048?(0<=b&&(f.Oa[e]=b),d=f.Oa[e]):(0<=b&&(f.u[e]=b),d=f.u[e]),d;default:return f.I|=16,f.K(4,124)}break;case 4194176:e=a>>1&31;d=L(this,f.xa[3][e],a,b,c);0<=d&&(f.xa[3][e]=d,f.xa[3][e&15]&=65295);break;case 4194112:switch(a&-2){case 4194174:d=L(this,f.Zb,a,b,c);0<=d&&(f.Zb=d);break;case 4194172:d=f.Za;d&65280&& +(d=(d<<8|d>>8)&65535);break;case 4194168:0>b?d=this.g.wd&65535:(d=L(this,this.g.data,a,b,c),0<=d&&(this.g.data=d));break;default:return f.I|=16,f.K(4,126)}break;case 4194048:e=this.D;switch(a&-2){case 4194048:d=L(this,e.Kb,a,b,c);0<=d&&(e.Kb=d);break;case 4194050:d=L(this,e.na,a,b,c);0<=d&&(e.na=d);break;case 4194052:d=L(this,e.P,a,b,c);0<=b&&0<=d&&(e.P=d&-36993|e.P&36992,e.P&1&&Vb(this));break;case 4194054:d=L(this,e.Lb,a,b,c);0<=d&&(e.Lb=d);break;case 4194056:d=L(this,e.Jb,a,b,c);0<=d&&(e.Jb=d); +break;case 4194058:d=L(this,e.va,a,b,c);0<=d&&(e.va=d);break;case 4194060:break;case 4194062:d=L(this,e.Ic,a,b,c);0<=d&&(e.Ic=d);break;default:return f.I|=16,f.K(4,128)}break;case 4193728:var g=this.B;e=g.Ca&7;switch(a&-2){case 4193728:d=L(this,g.T,a,b,c);0<=b&&0<=d&&(g.bb=g.bb&60|d>>8&3,g.T=d&17279|g.T&34944|2048,d&1&&g.T&128?hc(this,e):192==(d&192)&&K(f,0,5,172));break;case 4193730:d=L(this,g.xb,a,b,c);0<=d&&(g.xb=d);break;case 4193732:d=L(this,g.vb,a,b,c);0<=d&&(g.vb=d&65534);break;case 4193734:d= +L(this,g.Da[e],a,b,c);0<=d&&(g.Da[e]=d&7967);break;case 4193736:d=L(this,g.Ca,a,b,c);0<=d&&(g.Ca=d&63|g.Ca&65472,d&128&&gc(this));break;case 4193738:d=g.ta[e];break;case 4193740:d=g.wb[e];break;case 4193742:d=L(this,g.mb,a,b,c);0<=d&&(g.mb=d&255);break;case 4193744:d=g.td[e];break;case 4193746:d=L(this,g.Jc,a,b,c);0<=d&&(g.Jc=d);break;case 4193748:d=L(this,g.Kc[e],a,b,c);0<=d&&(g.Kc[e]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=g.ud[e];break;case 4193754:d=L(this,g.Lc[e],a,b,c);0<=d&& +(g.Lc[e]=d);break;case 4193756:d=L(this,g.Pa[e],a,b,c);0<=d&&(g.Pa[e]=d&511);break;case 4193758:g.$b[e]=g.Pa[e];d=g.$b[e];break;case 4193760:d=g.rd[e];break;case 4193762:d=g.sd[e];break;case 4193764:d=g.pd[e];break;case 4193766:d=g.qd[e];break;case 4193768:d=L(this,g.bb,a,b,c);0<=d&&(g.bb=d&63,g.T=g.T&-769|(d&3)<<8);break;case 4193770:d=L(this,g.nc,a,b,c);0<=d&&(g.nc=d);break;default:return f.I|=16,f.K(4,132)}break;case 4192512:e=this.w;switch(a&-2){case 4192512:d=L(this,e.M,a,b,c);0<=b&&0<=d&&(e.Ta= +e.Ta&60|d>>4&3,e.M=e.M&-1023|d&1022,e.M&128||fc(this));break;case 4192514:d=L(this,e.Db,a,b,c);0<=d&&(e.Db=d&65534);break;case 4192516:d=L(this,e.ea,a,b,c);0<=d&&(e.ea=d);break;case 4192518:d=L(this,e.Xa,a,b,c);0<=d&&(e.Xa=d);break;case 4192520:d=L(this,e.Ta,a,b,c);0<=d&&(e.Ta=d&63,e.M=e.M&-49|(e.Ta&3)<<4);break;default:return f.I|=16,f.K(4,134)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=f.$a:(d=L(this,f.$a,a,b,c),0<=d&&(70!==f.jb&&(d&=-49),f.$a=d,f.Vb[0]=d&4?15:7,f.Vb[1]=d&2?15:7,f.Vb[3]= +d&1?15:7,f.ic&&(e=2,f.$a&16&&(e=1),this.g.rb=this.g.rb&-8|e)));break;default:return f.I|=16,f.K(4,136)}break;case 4191424:e=a>>1&31;d=L(this,f.xa[0][e],a,b,c);0<=d&&(f.xa[0][e]=d,f.xa[0][e&15]&=65295);break;case 4191360:e=a>>1&31;d=L(this,f.xa[1][e],a,b,c);0<=d&&(f.xa[1][e]=d,f.xa[1][e&15]&=65295);break;case 4190400:case 4190336:if(70!==f.jb)return f.K(4,234);e=a>>2&31;d=f.Nb[e];a&2&&(d>>=16);d&=65535;0<=b&&(d=L(this,d,a,b,c),0<=d&&(f.Nb[e]=a&2?d<<16|f.Nb[e]&65535:f.Nb[e]&4294901760|d&65534));break; +case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0>b)d=Ob[a>>1&255];else return f.I|=16,f.K(4,138);break;default:return f.I|=16,f.K(4,142)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)");return d};var kc={},Rb=(kc[65382]=[null,null,Nb.prototype.ed,Nb.prototype.yd,"LKS"],kc[65402]=[null,null,Nb.prototype.fd,Nb.prototype.zd,"MMR0"],kc[65534]=[null,null,Nb.prototype.gd,Nb.prototype.Ad,"PSW"],kc); +La(function(){for(var a=D(document,"pdp11","device"),b=0;b>1),this.b=new Int32Array(this.D,0,c>>2),rc(this,nc?sc:tc);else{this.b=Array(c>>2);for(a=0;a>2),b=0;b>8,c)},Y:function(a){return this.b[a>>2]>>>((a&3)<<3)&255},ja:function(a){var b=a>>2;a=(a&3)<<3;var c=this.b[b]>>a;return 24>a?c&65535:c&255|(this.b[b+1]&255)<<8},qa:function(a,b){var c=a>>2;a=(a&3)<<3;this.b[c]=this.b[c]&~(255<< +a)|b<>2;a=(a&3)<<3;24>a?this.b[c]=this.b[c]&~(65535<>8);this.Va=!0},S:function(a,b){if(this.j&&null!=this.A){var c=this.j;yc(c,this.A+a,1,c.S)&&c.ha(!0)}return this.jc(a,b)},da:function(a,b){if(this.j&&null!=this.A){var c=this.j;yc(c,this.A+a,2,c.S)&&c.ha(!0)}return this.kc(a,b)},ma:function(a,b,c){if(this.j&&null!=this.A){var d=this.j;yc(d,this.A+a,1,d.G)&&d.ha(!0)}this.f?this.L(a, +b,c):this.bc(a,b,c)},wa:function(a,b,c){if(this.j&&null!=this.A){var d=this.j;yc(d,this.A+a,2,d.G)&&d.ha(!0)}this.f?this.L(a,b,c):this.rc(a,b,c)},R:function(a){return this.w[a]},W:function(a,b){a=this.w[a];this.j&&F(this.j,128)&&E(this.j,"Memory.readByte("+J(this.j,b)+"): "+J(this.j,a),!0);return a},Z:function(a){return this.B.getUint16(a,!0)},ga:function(a,b){a=this.H[a>>1];this.j&&F(this.j,128)&&E(this.j,"Memory.readWord("+J(this.j,b)+"): "+J(this.j,a),!0);return a},ka:function(a,b){this.w[a]=b; +this.Va=!0},pa:function(a,b,c){this.w[a]=b;this.Va=!0;this.j&&F(this.j,128)&&E(this.j,"Memory.writeByte("+J(this.j,c)+","+J(this.j,b)+")",!0)},ua:function(a,b){this.B.setUint16(a,b,!0);this.Va=!0},za:function(a,b,c){this.H[a>>1]=b;this.Va=!0;this.j&&F(this.j,128)&&E(this.j,"Memory.writeWord("+J(this.j,c)+","+J(this.j,b)+")",!0)}};function Ab(a,b,c){a.j=b;a.g=a.F=0;c&&((a.g=c.g)&&xc(a,wc,!1),(a.F=c.F)&&vc(a,wc,!1))} +function zc(a,b){b?--a.F||(a.ac=a.f?a.L:a.bc,a.Oc=a.f?a.G:a.rc):--a.g||(a.Xb=a.jc,a.Gc=a.kc)}function vc(a,b,c){c&&a.F||(a.ac=!a.f&&b[1]||a.L,a.Oc=!a.f&&b[3]||a.G);if(c||void 0===c)a.bc=b[1]||a.L,a.rc=b[3]||a.G}function xc(a,b,c){c&&a.g||(a.Xb=b[0]||a.J,a.Gc=b[2]||a.N);if(c||void 0===c)a.jc=b[0]||a.J,a.kc=b[2]||a.N}function rc(a,b){b||(b=Ac);xc(a,b,void 0);vc(a,b,void 0)}var Ac=[],uc=[I.prototype.Y,I.prototype.qa,I.prototype.ja,I.prototype.Aa],wc=[I.prototype.S,I.prototype.ma,I.prototype.da,I.prototype.wa]; +if(wb)var tc=[I.prototype.R,I.prototype.ka,I.prototype.Z,I.prototype.ua],sc=[I.prototype.W,I.prototype.pa,I.prototype.ga,I.prototype.za];function Bc(a,b){w.call(this,"CPU",a,Bc,1);var c=a.multiplier||1;this.Ra=a.cycles||b;this.Ya=c;this.ob=Math.round(this.Ra/1E4)/100;this.lb=this.ob*this.Ya;this.v.fa=!1;this.v.pc=!1;this.v.Cb=a.autoStart;this.v.uc=!1;this.v.pb=!1;this.Gb=this.ma=0;this.Hb=a.csStart;this.sb=a.csInterval;this.tb=a.csStop;this.N=[];this.Dc=this.vd.bind(this);G(this)}y(Bc); +var Cc=["power","reset"];k=Bc.prototype;k.Na=function(a,b,c,d){this.D=a;this.F=b;this.j=d;for(b=0;b=a.ma&&(a.ma+=a.sb,c=!0);0<=a.tb&&a.tb<=Ic(a)&&(a.sb=a.tb=-1,Fc(a),a.ha(),c=!0);c&&a.i(Ic(a)+" cycles: checksum="+p(a.Gb))}} +function Jc(a,b,c,d){if(a.L[b]){void 0===c&&(vb(a,"Value for "+b+" is invalid"),a.ha());var e=a.j&&a.j.ma||8;c=!a.v.fa||a.v.uc?8==e?ba(c,d):p(c,d):"--------".substr(0,d||4);a.L[b].textContent!=c&&(a.L[b].textContent=c)}} +k.oa=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.L[b]=c;a=!0;break;case "run":this.L[b]=c;c.onclick=function(){var a;if(a=d.D)if(a=d.D,a.v.ia)a=!0;else{var b=null,c,h=bb(a.id);for(c=0;ca.ga/a.lb?b=1:d=!0;a.Ya=b;b=a.ob*a.Ya;if(a.lb!=b){a.lb=b;b=a.lb.toFixed(2)+"Mhz";var e=a.L.setSpeed;e&&(e.textContent=b);a.i("target speed: "+b)}c&&a.D&&a.D.Ob()}dd(a,a.Z);a.Z=0;a.Y=ra();a.ja=0;ed(a);return d}function Pb(a,b){var c=a.N.length;a.N.push([-1,b]);return c}function Qb(a,b,c){0<=b&&ba.N[b][0]&&(c*=a.Ra*a.Ya/1E3,a.N[b][0]=c)}function fd(a,b){for(var c=a.N.length-1;0<=c;c--){var d=a.N[c];0>d[0]||b>d[0]&&(b=d[0])}return b} +function gd(a,b){for(var c=a.N.length-1;0<=c;c--){var d=a.N[c];0>d[0]||(d[0]-=b,0>=d[0]&&(d[0]=-1,d[1]()))}} +k.vd=function(){if(this.v.fa){this.qb>=this.Ra&&ed(this,!0);this.wa=0;this.Qa=ra();if(this.ja){var a=this.Qa-this.ja;a>this.Ac&&(this.Y+=a,this.Y>this.Qa&&(this.Y=this.Qa))}try{do{var b=fd(this,this.v.pb?1:this.cb);try{this.zb(b)}catch(e){if("number"!=typeof e)throw e;}var c=this.S-this.b;gd(this,c);this.wa+=c;this.Z+=c;dd(this,0,!0);Hc(this,c);this.pa-=c;if(0>=this.pa){this.pa+=this.cb;15<=++this.Cc&&(this.D&&this.D.Ea(),this.Cc=0);break}}while(this.v.fa)}catch(e){this.ha();M(this);this.D&&this.D.stop(ra(), +Ic(this));vb(this,e.stack||e.message);return}if(this.v.fa){a=setTimeout;b=this.Dc;this.ja=ra();c=this.Ac;this.wa&&(c=Math.round(c*this.wa/this.cb));var c=c-(this.ja-this.Qa),d=this.ja-this.Y;d&&(this.ga=Math.round(this.Z/(10*d))/100,864E5<=d&&(this.ka=0,Kc(this)));if(0>c||this.gac&&(this.Y-=c),c=0;this.qb+=this.wa;this.ja+=c;a(b,c)}}}; +k.yb=function(a){if(ib(this))return!1;if(this.v.fa)return this.i(this.toString()+" busy"),!1;Kc(this);this.v.fa=!0;this.v.pc=!0;this.ua&&this.ua.start();var b=this.L.run;b&&(b.textContent="Halt");this.D&&(a&&this.D.Ob(!0),this.D.start(this.Y,Ic(this)));M(this,!0);setTimeout(this.Dc,0);return!0};k.zb=function(){return 0}; +k.ha=function(a){if(this.v.fa){this.S-=this.b;this.b=0;dd(this,this.Z);this.Z=0;this.v.fa=!1;this.ua&&this.ua.stop();var b=this.L.run;b&&(b.textContent="Run");this.D&&this.D.stop(ra(),Ic(this));M(this)}this.v.complete=a};function M(a,b){a.D&&a.D.Ea(b)} +function hd(a){this.ad=+a.model||1170;this.dd=a.resetAddr||0;Bc.call(this,a,6666667);this.Rb=0;this.decode=id.bind(this);this.U=65536;this.V=32768;this.aa=65535;this.X=32768;this.O=15;this.u=[0,0,0,0,0,0,0,this.dd];this.Oa=[0,0,0,0,0,0];this.ya=[0,0,0,0];this.Aa=this.B=0;this.xa=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.Nb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.hc=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.g=this.f=this.nb=this.H=this.J=this.C=0;this.jb=70;this.qa=-1;jd(this);this.v.complete=this.v.Tc=!1}y(hd,Bc);k=hd.prototype;k.reset=function(){this.v.fa&&this.ha();jd(this);Ec(this);this.v.error=!1;this.parent.reset.call(this)}; +function jd(a){a.ab=255;a.I=0;a.mc=0;a.G=0;a.Za=0;a.Zb=0;a.$a=0;a.ic=0;a.za=0;a.Yc=[4,2,0,1];a.Vb=262143;a.Tb=253952;a.Ub=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.bd=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.w=[];a.C|=2;Sb(a)} +function Sb(a){a.ic?(a.da=65536,a.R=a.Wc,a.W=a.Hc,a.Ec=a.Dd):(a.da=0,a.R=a.Vc,a.W=a.ub,a.Ec=a.Ab)}k.xc=function(){return 0};k.save=function(){var a=new N(this);a.set(0,[]);a.set(1,[this.ka,this.Ya]);a.set(2,Kb(this.F));return a.data()}; +k.restore=function(a){var b=a[1];this.ka=b[1];Kc(this,b[3]);a:{b=this.F;a=a[2];var c;for(c=0;cb){a.w[f].Ka-=b;break}b-=a.w[f].Ka}a.w.splice(f+1,0,{Ka:b,Fc:c<<5&224,Nc:d,gc:e})}a.C|=2}function Tb(a){return a.O=a.O&63728|a.Ma()|md(a)|ld(a)|kd(a)} +function Ub(a,b){a.X=b<<12;a.aa=~b&4;a.V=b<<14;a.U=b<<16;if((b^a.O)&2048)for(var c=a.Oa.length;0<=--c;){var d=a.u[c];a.u[c]=a.Oa[c];a.Oa[c]=d}a.B=b>>14&3;c=a.O>>14&3;a.B!=c&&(a.ya[c]=a.u[6],a.u[6]=a.ya[a.B]);a.C|=2;a.O=b}function O(a,b){a.C&128||(a.X=a.aa=b,a.V=0)}function pd(a,b,c){a.C&128||(a.X=a.aa=a.U=b,a.V=c||0)}function qd(a,b,c,d){a.C&128||(a.X=a.aa=a.U=b,a.V=(c^b)&(d^b))}function rd(a,b){a.C&128||(a.X=a.aa=a.U=b,a.V=a.X^a.U>>1)} +function sd(a,b,c,d){a.C&128||(a.X=a.aa=a.U=b,a.V=(c^d)&(d^b))}k.K=function(a){var b=!1;0>this.qa?this.qa=Tb(this):this.B||(a=4,b=!0);this.G&57344||(this.Za=63222,this.Zb=a);this.B=0;var c=this.W(a|this.da),d=this.W(a+2&65535|this.da);Ub(this,d&-12289|this.qa>>2&12288);b&&(this.I|=4,this.u[6]=4);td(this,this.qa);td(this,this.u[7]);od(this,c);this.C&=-113;this.qa=-1;throw a;};function ud(a){var b=vd(a),c=vd(a)&-1793;a.O&49152&&(c=c&-225|a.O&63712);od(a,b);Ub(a,c);a.C&=-17} +function jc(a,b){var c=b>>13&31;31>c?a.$a&32&&(b=a.Nb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} +function wd(a,b,c){var d,e,f,g=0;d=b>>13;a.$a&a.Yc[a.B]||(d&=7);e=a.Ub[a.B][d];f=(a.bd[a.B][d]<<6)+(b&8191)&a.Vb;ff&&(3932160<=f&&(f=jc(a,f&262143)),f>=a.Tb&&4186112>f&&(a.I|=32,a.K(4,12))));switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|= +16384));a.Ub[a.B][d]=e;if(4194170!==f||a.B)a.za=a.B,a.Aa=d;g&&(g&57344&&(0<=a.qa&&(g|=128),a.G&57344||(a.G=a.G|g|a.za<<5|a.Aa<<1),a.K(168,16)),a.G&61440||!(4191360>f||4194239c&&d&1&&(f=1));a.b-=3;break;case 3:f=2;e=a.u[c];7!==c&&(e|=g);e=a.W(e);e|=g;a.b-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.u[c]+f&65535;7!==c&&(e|=g);a.b-=4;break;case 5:f=-2;e=a.u[c]-2&65535;7!==c&&(e|=g);e=a.W(e)|g;a.b-= +8;break;case 6:return e=nd(a),e=e+a.u[c]&65535|g,a.b-=6,e;case 7:return e=nd(a),e=e+a.u[c]&65535,e=a.W(e|a.da)|g,a.b-=10,e}a.u[c]=a.u[c]+f&65535;!g||a.G&57344||(a.Za=a.Za<<8|f<<3&248|c);6==c&&!a.B&&d&4&&0>=f&&(a.u[6]<=a.ab||65534<=a.u[6])&&(a.u[6]<=a.ab-32?(a.I|=4,a.u[6]=4,a.K(4,24)):(a.I|=8,a.C|=64));return e}k.Vc=function(a,b,c){return xd(this,a,b,c)};k.Wc=function(a,b,c){return wd(this,xd(this,a,b,c),c)};k.ub=function(a){a&1&&(this.I|=64,this.K(4,10));return this.F.Ga(a)}; +k.Hc=function(a){return this.ub(wd(this,a,2))};k.Ab=function(a,b){a&1&&(this.I|=64,this.K(4,10));this.F.oc(a,b&65535)};k.Dd=function(a,b){this.Ab(wd(this,a|65536,4),b)};function yd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?(d=xd(a,b,d,2),c&65536||61440!==(a.O&61440)&&(d&=65535),a.B=a.O>>12&3,c=a.W(d|c&a.da),a.B=a.O>>14&3):c=6!=d||(a.O>>2&12288)===(a.O&12288)?a.u[d]:a.ya[a.O>>12&3];return c} +function zd(a,b,c,d){a.G&57344||(a.Za=22);var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=xd(a,b,e,4),c&65536||(e&=65535),a.B=a.O>>12&3,e=wd(a,e|c&65536,4),a.B=a.O>>14&3,a.Ab(e,d)):6!=e||(a.O>>2&12288)===(a.O&12288)?a.u[e]=d:a.ya[a.O>>12&3]=d}function Ad(a,b){b>>=6;var c=a.J=b&7;(b=a.H=(b&56)>>3)?(c=a.R(b,c,3),a=a.F.kb(c)):a=a.u[c]&255;return a}function Bd(a,b){var c;b>>=6;var d=a.J=b&7;(b=a.H=(b&56)>>3)?c=a.ub(a.R(b,d,2)):c=a.u[d];return c}function Cd(a,b){var c=a.f=b&7;b=a.g=(b&56)>>3;return xd(a,b,c,8)} +function Dd(a,b){var c=a.f=b&7;(b=a.g=(b&56)>>3)?(c=a.R(b,c,3),a=a.F.kb(c)):a=a.u[c]&255;return a}function Ed(a,b){var c,d=a.f=b&7;(b=a.g=(b&56)>>3)?c=a.ub(a.R(b,d,2)):c=a.u[d];return c}function P(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.nb=a.R(b,e,7),c=d.call(a,c,a.F.kb(e)),e&1&&a.b--,a.F.Mb(e,c&255)):a.u[e]=a.u[e]&65280|d.call(a,c,a.u[e])}function Q(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(e=a.R(b,e,6),a.Ab(e,d.call(a,c,a.ub(e)))):a.u[e]=d.call(a,c,a.u[e])} +function Fd(a,b,c,d){var e=a.f=b&7;(b=a.g=(b&56)>>3)?(d=a.R(b,e,5),d&1&&a.b--,a.F.Mb(d,c&255)):a.u[e]=c?d&1?c<<24>>24&65535:a.u[e]&-256|c&255:a.u[e]&-256;return c}function Gd(a,b,c){var d=a.f=b&7;(b=a.g=(b&56)>>3)?a.Ab(a.R(b,d,4),c):a.u[d]=c&65535;return c}function R(a,b,c){c&&(od(a,a.u[7]+(b<<24>>23)),a.b-=2);a.b-=3} +k.zb=function(a){this.v.complete=!0;var b=this.v.Tc=this.j&&Hd(this.j),c=a?this.v.pc?0:1:-1;this.v.pc=!1;this.S=this.b=a;do{if(b){if(Id(this.j,this.u[7],c)){this.ha();break}c=1}if(this.C&&(this.C&112&&(this.C&32?this.K(168,28):this.C&64?this.K(4,30):this.C&16&&this.K(12,32),this.C&=-113),this.C&7))if(this.C&2){this.C&=-3;a=null;for(var d=this.mc&224,e=this.w.length;0<=--e;){if(0d&&(d=this.w[e].Fc,a=this.w[e],this.w.splice(e,1))}d>(this.O&224)&&(this.C&4&&(this.u[7]=this.u[7]+2&65535,this.C&=-5),a?this.K(a.Nc,26):this.K(160,26))}else this.C&1&&this.C++;this.G&57344||(this.Za=0,this.Zb=this.u[7]);this.C=this.C&7|this.O&16;this.decode(nd(this))}while(0>1|b<<16;rd(this,a);return a&65535}function Od(a,b){a=b&2048|b>>1|b<<8;rd(this,a<<8);return a&255}function Pd(a,b){a=b&~a;O(this,a);return a}function Qd(a,b){a=b&~a;O(this,a<<8);return a}function Rd(a,b){a|=b;O(this,a);return a} +function Sd(a,b){a|=b;O(this,a<<8);return a}function Td(a,b){a=~b|65536;pd(this,a);return a&65535}function Ud(a,b){a=~b|256;pd(this,a<<8);return a&255}function Vd(a,b){a=b-a;this.C&128||(this.X=this.aa=a,this.V=b&(b^a));return a&65535}function Wd(a,b){a=b-a;var c=a<<8;b<<=8;this.C&128||(this.X=this.aa=c,this.V=b&(b^c));return a&255}function Xd(a,b){a=b+a;this.C&128||(this.X=this.aa=a,this.V=a&(b^a));return a&65535} +function Yd(a,b){a=b+a;var c=a<<8;this.C&128||(this.X=this.aa=c,this.V=c&(b<<8^c));return a&255}function Zd(a,b){a=-b;pd(this,a,a&b&32768);return a&65535}function $d(a,b){a=-b;pd(this,a<<8,(a&b&128)<<8);return a&255}function ae(a,b){a=b<<1|this.U>>16&1;rd(this,a);return a&65535}function be(a,b){a=b<<1|this.U>>16&1;rd(this,a<<8);return a&255}function ce(a,b){a=(this.U&65536|b)>>1|b<<16;rd(this,a);return a&65535}function de(a,b){a=((this.U&65536)>>8|b)>>1|b<<8;rd(this,a<<8);return a&255} +function ee(a,b){var c=b-a;sd(this,c,a,b);return c&65535}function fe(a,b){var c=b-a;sd(this,c<<8,a<<8,b<<8);return c&255}function ge(a,b){this.C&128||(this.X=this.aa=b&65280,this.V=this.U=0);return(b<<8|b>>8)&65535}function he(a,b){a^=b;O(this,a);return a&65535} +function ie(a){var b=Ed(this,a);a=a>>6&7;var c=this.u[a];c&32768&&(c|=4294901760);this.U=this.V=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.V=32768)}this.u[a]=c&65535;this.X=this.aa=c;this.b-=(this.g?6:7)+b} +function je(a){var b=Ed(this,a);a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.U=this.V=0;b&=63;if(b&32){b=64-b;32>b-1;this.U=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.u[a|1]=d&65535;this.X=d>>16;this.aa=d>>16|d;this.b-=(this.g?6:7)+b}function S(a){a&1&&(this.U=0);a&2&&(this.V=0);a&4&&(this.aa=1);a&8&&(this.X=0);this.b-=5} +function ke(a){var b=Ed(this,a);if(b){a=a>>6&7;var c=this.u[a]<<16|this.u[a|1];this.U=this.V=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.u[a]=d&65535,this.u[a|1]=c-d*b&65535,this.aa=d>>16|d,this.X=d>>16):(this.V=32768,this.aa=d>>15|d,this.X=c>>16,-1===b&&65534===this.u[a]&&(this.u[a]=this.u[a|1]=1));this.b-=53}else this.aa=this.X=0,this.V=32768,this.U=65536,this.b-=7}var le=[0,7,7,10,7,11,9,13];function me(a){var b=this.b;od(this,Cd(this,a));this.b=b-le[this.g]} +var ne=[0,14,14,17,14,18,16,20];function oe(a){var b=this.b,c=Cd(this,a);a=a>>6&7;td(this,this.u[a]);this.u[a]=this.u[7];od(this,c);this.b=b-ne[this.g]}var pe=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17],qe=[7,13,13,17,14,18,17,21];function re(a){var b=Ed(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.u[a];c&32768&&(c|=-65536);b=~~(b*c);this.u[a]=b>>16&65535;this.u[a|1]=b&65535;this.C&128||(this.X=b>>16,this.aa=this.X|b,this.V=0,this.U=-32768>b||32767>6;if(this.u[b]=this.u[b]-1&65535)od(this,this.u[7]-((a&63)<<1)),this.b+=1;this.b-=6}function Ne(a){Q(this,a,0,ge);this.b-=this.g?9:3+(7==this.f?2:0)}function Oe(a){Q(this,a,Bd(this,a),he);this.b-=this.g?9:3+(7==this.f?2:0)}function V(){this.K(8,6)}function id(a){Pe[a>>12].call(this,a)} +var Pe=[function(a){Qe[a>>8&15].call(this,a)},function(a){var b=Bd(this,a),c=this.b;O(this,Gd(this,a,b));this.b=c-pe[(this.H?8:0)+this.g]+(7!=this.f||this.g?0:2)},function(a){var b=Bd(this,a);a=Ed(this,a);sd(this,b-a,a,b);this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){O(this,Bd(this,a)&Ed(this,a));this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){Q(this,a,Bd(this,a),Pd);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f? +2:0)},function(a){Q(this,a,Bd(this,a),Rd);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){Q(this,a,Bd(this,a),Jd);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){Re[a>>8&15].call(this,a)},function(a){Se[a>>8&15].call(this,a)},function(a){var b=Ad(this,a);O(this,Fd(this,a,b,1)<<8);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){var b=Ad(this,a)<<8;a=Dd(this,a)<<8;sd(this,b-a,a,b);this.b-=this.g? +4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){O(this,(Ad(this,a)&Dd(this,a))<<8);this.b-=this.g?4+(this.J&&6<=this.f?1:0):(this.H?4:3)+(7==this.f?2:0)},function(a){P(this,a,Ad(this,a),Qd);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){P(this,a,Ad(this,a),Sd);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},function(a){Q(this,a,Bd(this,a),ee);this.b-=this.g?9+(this.J&&6<=this.f?1:0):(this.H?5:3)+(7==this.f?2:0)},V],Qe= +[function(a){Te[a>>4&15].call(this,a)},function(a){R(this,a,!0)},function(a){R(this,a,!md(this))},function(a){R(this,a,md(this))},function(a){R(this,a,!this.Ma()==!ld(this))},function(a){R(this,a,!this.Ma()!=!ld(this))},function(a){R(this,a,!md(this)&&!this.Ma()==!ld(this))},function(a){R(this,a,md(this)||!this.Ma()!=!ld(this))},oe,oe,function(a){Ue[a>>6&3].call(this,a)},function(a){Ve[a>>6&3].call(this,a)},function(a){We[a>>6&3].call(this,a)},function(a){Xe[a>>6&3].call(this,a)},V,V],Ue=[function(a){pd(this, +Gd(this,a,0));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,0,Td);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,1,Xd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,1,Vd);this.b-=this.g?9:3+(7==this.f?2:0)}],Ve=[function(a){Q(this,a,0,Zd);this.b-=this.g?11:6},function(a){Q(this,a,kd(this)?1:0,Jd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,kd(this)?1:0,ee);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=Ed(this,a);pd(this,a);this.b-=this.g?4:3+(7==this.f? +2:0)}],We=[function(a){Q(this,a,0,ce);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,0,ae);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,0,Nd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){Q(this,a,0,Ld);this.b-=this.g?9:3+(7==this.f?2:0)}],Xe=[function(a){a=this.u[7]+((a&63)<<1)&65535;var b=this.Hc(a|65536);od(this,this.u[5]);this.u[6]=a+2&65535;this.u[5]=b;this.b-=8},function(a){a=yd(this,a,0);td(this,a);O(this,a);this.b-=11},function(a){var b=vd(this),c=this.b;zd(this,a, +0,b);O(this,b);this.b=c-qe[this.g]},function(a){O(this,Gd(this,a,this.Ma?65535:0));this.b-=this.g?9:3+(7==this.f?2:0)}],Te=[function(a){Ye[a&15].call(this,a)},V,V,V,me,me,me,me,function(a){if(a&8)this.K(8,6);else{var b=vd(this);a&=7;od(this,this.u[a]);this.u[a]=b;this.b-=9}},function(a){a&8?(this.O&49152||(this.O=this.O&-2017|(a&7)<<5,this.C|=1),this.b-=5):this.K(8,6)},function(a){Ze[a&15].call(this,a)},function(a){$e[a&15].call(this,a)},Ne,Ne,Ne,Ne],Ye=[function(){this.O&49152?(this.I|=128,this.K(4, +3)):this.ha();this.b-=7},function(){this.C|=4;this.u[7]=this.u[7]+-2&65535;this.b-=3},function(){ud(this);this.C|=this.O&16;this.b-=13},function(){this.K(12,1);this.b-=5},function(){this.K(16,4);this.b-=25},function(){this.O&49152||(jd(this),this.F.reset());this.b-=667},function(){ud(this);this.b-=13},V,V,V,V,V,V,V,V,V],Ze=[se,function(){this.U=0;this.b-=5},function(){this.V=0;this.b-=5},S,function(){this.aa=1;this.b-=5},S,S,S,function(){this.X=0;this.b-=5},S,S,S,S,S,S,S],$e=[se,function(){this.U= +65536;this.b-=5},function(){this.V=32768;this.b-=5},U,function(){this.aa=0;this.b-=5},U,U,U,function(){this.X=32768;this.b-=5},U,U,U,U,U,U,U],Re=[re,re,ke,ke,ie,ie,je,je,Oe,Oe,V,V,V,V,te,te],Se=[function(a){R(this,a,!this.Ma())},function(a){R(this,a,this.Ma())},function(a){R(this,a,!kd(this)&&!md(this))},function(a){R(this,a,kd(this)||md(this))},function(a){R(this,a,!ld(this))},function(a){R(this,a,ld(this))},function(a){R(this,a,!kd(this))},function(a){R(this,a,kd(this))},function(){this.K(24,2); +this.b-=25},function(){this.K(28,5);this.b-=5},function(a){af[a>>6&3].call(this,a)},function(a){bf[a>>6&3].call(this,a)},function(a){cf[a>>6&3].call(this,a)},function(a){df[a>>6&3].call(this,a)},V,V],af=[function(a){pd(this,Fd(this,a,0));this.b-=this.g?9:3+(7==this.f?2:0)},function(a){P(this,a,0,Ud);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){P(this,a,1,Yd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){P(this,a,1,Wd);this.b-=this.g?9:3+(7==this.f?2:0)}],bf=[function(a){P(this,a,0,$d);this.b-= +this.g?11:6},function(a){P(this,a,kd(this)?1:0,Kd);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){P(this,a,kd(this)?1:0,fe);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){a=Dd(this,a);pd(this,a<<8);this.b-=this.g?4:3+(7==this.f?2:0)}],cf=[function(a){P(this,a,0,de);this.b-=this.g?9+(this.nb&1):3+(7==this.f?2:0)},function(a){P(this,a,0,be);this.b-=this.g?9:3+(7==this.f?2:0)},function(a){P(this,a,0,Od);this.b-=this.g?9+(this.nb&1):3+(7==this.f?2:0)},function(a){P(this,a,0,Md);this.b-=this.g?9:3+(7== +this.f?2:0)}],df=[V,function(a){a=yd(this,a,65536);td(this,a);O(this,a);this.b-=11},function(a){var b=vd(this),c=this.b;zd(this,a,65536,b);O(this,b);this.b=c-qe[this.g]},V];function ef(a){w.call(this,"ROM",a,ef);this.f=null;this.B=a.addr;this.g=a.size;this.G=a.writable;this.D=a.alias;this.w=a.file;this.H=da(this.w);if(this.w){a=this.w;var b=ea(this.H);"json"!=b&&"hex"!=b&&(a=ga()+"/api/v1/dump?file="+this.w+"&format=bytes&decimal=true");var c=this;ua(a,null,!0,function(a,b,f){ff(c,a,b,f)})}}y(ef); +ef.prototype.Na=function(a,b,c,d){this.F=b;this.b=c;this.j=d;gf(this)};ef.prototype.Ia=function(){if(this.Ja){if(this.j){var a=this.j,b=this.id,c=this.B,d=this.g,e=this.Ja,f=[],g;for(g in e){var h=e[g];"number"==typeof h&&(e[g]=h={o:h});var l=h.o,m=h.a;if(void 0!==l){var n=f,l=[l>>>0,g],r=qa(n,l,a.tc);0>r&&n.splice(-(r+1),0,l)}m&&(h.a=m.replace(/''/g,'"'))}a.H.push({Hd:b,A:c,Xc:d,Ja:e,sc:f})}delete this.Ja}return!0};ef.prototype.Ha=function(){return!0}; +function ff(a,b,c,d){if(d)a.sa("Unable to load system ROM (error "+d+": "+b+")");else{ab(a.dc,b,c);var e;if("["==c.charAt(0)||"{"==c.charAt(0))try{var f,g,h=eval("("+c+")");if(f=h.bytes)a.f=f;else if(f=h.words)for(a.f=Array(2*f.length),g=e=0;e>8&255;else if(f=h.data)for(a.f=Array(4*f.length),g=e=0;e>8&255,a.f[g++]=f[e]>>16&255,a.f[g++]=f[e]>>24&255;else a.f=h;a.Ja=h.symbols;if(!a.f.length){t("Empty ROM: "+ +b);return}if(1==a.f.length){t(a.f[0]);return}}catch(l){a.sa("ROM data error: "+l.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.f=Array(b.length),e=0;e>>d.ba].bc(e&d.f,a.f[c]&255,e);a.j&&a.j.g--}b=!0}else b=!1;if(b){b=[];"number"==typeof a.D?b.push(a.D):null!=a.D&&a.D.length&&(b=a.D);for(c=0;c>> +e.ba;0>>=e.ba;0=b)a.preventDefault&&a.preventDefault(),64");if(2==b.length){var c=oa(b[0]);if(c!=this.Qb)return;b=oa(b[1]);if(this.J=cb(b)){var d=this.J.exports;if(d){var e=d.connect;e&&e.call(this.J);if(this.N=d.receiveData){this.status(this.dc+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.Ia=function(a,b){if(!b)if(this.Bc(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; +k.Ha=function(a){return a?this.save():!0};k.reset=function(){mf(this)};k.save=function(){var a=new N(this);a.set(0,[]);return a.data()};k.restore=function(){return mf(this)};function mf(a){a.W=0;a.f=0;a.g=128;a.B=[];return!0}k.lc=function(a){if("number"==typeof a)this.B.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.Y||8,c=a-this.H%a,this.Y&&(b=na("",c)));this.R&&!this.H&&c&&(b=String.fromCharCode(this.R)+b);this.w.value+=b;this.w.scrollTop=this.w.scrollHeight;this.H+=c}else if(null!=this.G){if(10==a||1024<=this.G.length)this.i(this.G), +this.G="";10!=a&&(this.G+=String.fromCharCode(a))}this.g&=-129;K(this.b,100,4,52,this.S)}};var nf={},lf=(nf[65392]=[null,null,W.prototype.jd,W.prototype.Cd,"RCSR"],nf[65394]=[null,null,W.prototype.hd,W.prototype.Bd,"RBUF"],nf[65396]=[null,null,W.prototype.ld,W.prototype.Fd,"XCSR"],nf[65398]=[null,null,W.prototype.kd,W.prototype.Ed,"XBUF"],nf);La(function(){for(var a=D(document,"pdp11","serial"),b=0;b=":6,">":6,"<=":6,"<":6,">>>":7,">>":7,"<<":7,"-":8,"+":8,"%":9,"/":9,"*":9};of.prototype.yc=function(){return-1};of.prototype.zc=function(){}; +function qf(a,b,c,d){if(c)if(b){0>a.B&&a.w.length&&(a.B=0);if(0>a.B||b!=a.w[a.B])a.w.splice(0,0,b),a.B=0;a.B--}else a.Z?b="end":b=a.w[a.B+1];a=[];if(b){b=b.replace(/""/g,"'");c=0;var e=null;d=d||";";for(var f=0;f<=b.length;f++){var g=b.charAt(f);if('"'==g||"'"==g)e?g==e&&(e=null):e=g;else if(g==d&&!e||!g)a.push(oa(b.substring(c,f))),c=f+1}}return a} +function rf(a,b,c){for(c=c||-1;c--&&b.length;){var d=b.pop();if(2>a.length)return!1;var e=a.pop(),f=a.pop();switch(d){case "*":d=f*e;break;case "/":if(!e)return!1;d=f/e;break;case "%":if(!e)return!1;d=f%e;break;case "+":d=f+e;break;case "-":d=f-e;break;case "<<":d=f<>":d=f>>e;break;case ">>>":d=f>>>e;break;case "<":d=f":d=f>e?1:0;break;case ">=":d=f>=e?1:0;break;case "==":d=f==e?1:0;break;case "!=":d=f!=e?1:0;break;case "&":d=f&e;break; case "^":d=f^e;break;case "|":d=f|e;break;case "&&":d=f&&e?1:0;break;case "||":d=f||e?1:0;break;default:return!1}a.push(d|0)}return!0} -function vf(a,b,c){var d;if(b){b=wf(a,b);for(var e=0,f=!1,g=b,h=[],l=[],m=b.split(/(\|\||&&|\||^|&|!=|==|>=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1;g=n+g;d>>=8}d=p(c,0,!0)+" "+c+". "+ca(c,0,!0)+" "+("0b"+g);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.i((null!=b?b+": ":"")+d);return e}function zf(a,b){if(b)return yf(a,b,a.ha[b]);var c=0;for(b in a.ha)yf(a,b,a.ha[b]),c++;return 0=|>>>|>>|>|<=|<<|<|-|\+|%|\/|\*)/);e>=1;g=n+g;d>>=8}d=p(c,0,!0)+" "+c+". "+ba(c,0,!0)+" "+("0b"+g);32<=c&&127>c&&(d+=" '"+String.fromCharCode(c)+"'")}a.i((null!=b?b+": ":"")+d);return e}function wf(a,b){if(b)return vf(a,b,a.ga[b]);var c=0;for(b in a.ga)vf(a,b,a.ga[b]),c++;return 0>>d.F.ca;l=1}d.i("blockid physical blockaddr used size type");d.i("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;l--;){var n=b[e];n.type==c?m++||d.i("..."):(c=n.type,m=Ib[c],n&&d.i(p(n.id,8)+" %"+p(e<>>c.ca].ic(d&c.f,d),this.g--,b&&Jf(a,b));return c}; -k.Ha=function(a,b){var c=65535,d=this.ba(a,!1,2);-1!==d&&(this.g++,c=Jb(this.F,d),this.g--,b&&Jf(a,b));return c};k.Lb=function(a,b,c){var d=this.ba(a,!0,1);if(-1!==d){this.g++;var e=this.F;e.X[(d&e.g)>>>e.ca].ac(d&e.f,b&255,d);this.g--;c&&Jf(a,c);N(this.b,!0)}};k.nc=function(a,b,c){var d=this.ba(a,!0,2);if(-1!==d){this.g++;var e=this.F;e.X[(d&e.g)>>>e.ca].qc(d&e.f,b&65535,d);this.g--;c&&Jf(a,c);N(this.b,!0)}};function Z(a){return{A:a,Ga:!1}}function Kf(a){return[a.A,a.Ga]} -function Lf(a){return{A:a[0],Ga:a[1]}}function If(a,b,c){var d;c=(c?a.R:a.nb).A;if(void 0!==b){d=b=wf(a,b);var e;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;cd&&(d+=b.length);0>d&&(d=0);for(var e=b.length;db||7a?"R"+a:6==a?"SP":"PC"}k.yc=function(a){var b;0<=a&&(8>a?b=this.b.u[a]:16>a?b=this.b.Pa[a-8]:20>a?b=this.b.ya[a-16]:20==a&&(b=Sb(this.b)));return b}; -k.message=function(a,b){this.g||(b&&(a+=" @"+J(this,Z(this.b.u[7]).A)),this.ka&1073741824?this.za.push(a):this.xa&&a==this.xa||(this.xa=a,this.ka&-2147483648&&(this.ja(),a+=" (cpu halted)"),this.i(a),this.b&&(a=this.b,id(a),a.la=0,N(a))))}; -function Cf(a){var b;if(Kd(a)){if(!a.N||!a.N.length){a.N=Array(1E3);for(b=0;b>>d.ca],!1)}a.T=["br"];if(a.G)for(b=1;b>>d.ca],!0);a.G=["bw"];a.zb=0} -k.gb=function(a,b,c){var d=!0;c||Sf(this,a,b,!1,!0);if(a!=this.f){var e=this.ba(b);if(-1===e)this.i("invalid address: "+J(this,b.A)),d=!1;else{var f=this.F;f.X[e>>>f.ca].gb(e&f.f,a==this.G)}}d&&(a.push(b),c?b.Ga=!0:(Tf(this,a,a.length-1,"set"),Cf(this)));return d};function Sf(a,b,c,d,e){var f=!1;c=a.ba(c);for(var g=1;g>>d.ca],b==a.G));h.Ga||Cf(a);break}}return f} -function Uf(a,b){for(var c=1;c>23)&65535,v=J(u,q);else if(8192==A)q=q.A-((f&63)<<1)&65535,v=J(u,q);else if(12288==A)v=J(u,f&7,1);else if(24576==A)v=J(u,f&63,1);else if(A=f&z,z&4032&&(A>>=6,z>>=6),z&63)switch(z=A&7,A&56){case 0:v=Nf(z);break;case 8:v="@"+Nf(z);break;case 16:7>z?v="("+Nf(z)+ -")+":(A=u.Ha(q,2),v="#"+J(u,A,0,!0));break;case 24:7>z?v="@("+Nf(z)+")+":(A=u.Ha(q,2),v="@#"+J(u,A,0,!0));break;case 32:v="-("+Nf(z)+")";break;case 40:v="@-("+Nf(z)+")";break;case 48:A=u.Ha(q,2);v=J(u,A,0,!0)+"("+Nf(z)+")";7==z&&(v=[v,J(u,A+q.A&65535)]);break;case 56:A=u.Ha(q,2),v="@"+J(u,A)+"("+Nf(z)+")",7==z&&(v=[v,J(u,A+q.A&65535)])}u=v;if(!u||!u.length){h="INVALID";break}"string"!=typeof u&&(l=u[1],u=u[0]);0b?(c=Nf(b),c+="="+J(a,d.u[b])):13>b?c="A"+(b-8)+"="+J(a,d.Pa[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+J(a,d.ya[b-16]):20==b&&(c="PS="+J(a,Sb(d)));c&&(c+=" ");return c}function Zf(a){var b,c="";for(b=0;6>b;b++)c+=Yf(a,b);c=c+"\n"+(Yf(a,6)+Yf(a,7)+Yf(a,20));return c+=Xf(a,"T")+Xf(a,"N")+Xf(a,"Z")+Xf(a,"V")+Xf(a,"C")}k.sc=function(a,b){return a[0]>b[0]?1:a[0]>>0;for(b=0;b>>0,h=f.Sc;if(e>=g&&eb)){d.u[b]=f&65535;break}a.i("unknown register: "+e);return}N(d);a.i("updated registers:")}a.i(Zf(a));c&&(a.R=Z(d.u[7]),Qf(a,J(a,a.R.A)))}}function dg(a,b){b=oa(b);var c=b.match(/^(['"])(.*?)\1$/);c?1h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.i(m)}h[3]&&(g=h[3],f=null);f=Wf(a,b,g,f);a.i(f);a.R=b;e-=b.A-l;c++}}} -function Vf(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.i(">> "+b):(a.$&&(a.i("ended assemble at "+J(a,a.Z.A)),a.R=a.Z,a.$=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.xa=null;if(hb(a)&&0n||"z"ja.length&&(a.i("note: only "+ja.length+" available"),X=ja.length);ba-=X;0>ba&&(null==ja[ja.length-1].A?(X=ba+X,ba=0):ba+=ja.length);var Rc=[];"call"==Ce&&(lb=1E5,Rc=["CALL"]);for(void 0!==Be&&a.i(X+" instructions earlier:");0=ja.length&&(ba=0);a.Cb=X;Ee++;lb--}}Ee||(a.i("no "+De+"history available"),a.Cb=void 0)}else{var Yb=If(a,ia);if(Yb){var Zb=0;za&&("l"==za.charAt(0)&&(za=za.substr(1)||xg),Zb=xf(a,za)>>>0,65536>4||1;zg--&&0<$b;){var ac=0,Sc=0,pb,Tc="",He="",ia=J(a,Yb.A);for(pb=4==ob?16:a.qa;0bc?String.fromCharCode(bc):".";$b--}nb&&(nb+="\n");nb+=ia+" "+Tc+(0==pb?" "+He:"")}nb&&a.i(nb);a.nb=Yb}}}}break;case "e":if("else"==g[0])break;var Ra,Uc,Vc,Wc,Xc=g[0],Yc=g[1];"eb"==Xc?(Ra=1,Uc=255,Vc=a.jb,Wc=a.Lb):"e"==Xc||"ew"==Xc?(Ra=2,Uc=65535,Vc=a.Ha,Wc=a.nc):Yc=null;if(null==Yc)a.i("edit memory commands:"),a.i("\teb [a] [...] edit bytes at address a"),a.i("\tew [a] [...] edit words at address a");else{var cc=If(a,Yc);if(cc)for(var dc=2;dcad;){for(var Aa=null,Dg=256;65536>sb.A>>>0;){bd.A=a.Ha(sb,2);if(null==sb.A||!Dg--)break;if(!(bd.A&1)){for(var Eg=a,ec=bd,Je=null,tb=ec.A,Ke=tb,cd=1;6>=cd&& -tb;cd++){if(2\nLicense: GPL version 3 or later ");this.i("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis ");for(b=0;big){if(kg(d,this.I)){this.B=new O(this,"1.30.1","failsafe");kg(this.B)&&(pg(this,d),a=2,qg(this.B));this.B.set("timestamp",sa());rg(this.B);var e=this.f&&!this.G;if(1==a||va("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=og(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?kg(d,g):("error"== -f&&"no machine state"!=g?(this.sa("Error: "+g),"unable to verify user"==g&&(Ca("user",""),this.g=null)):this.i(f+": "+g),qg(d),kg(d)?(c=og(d),e=!0):c=!1))}e&&ng(this,c?d:null)}else 2==a&&d.clear()}else ng(this);delete this.I;delete this.N}e=bb(this.id);for(f=0;fa[1];a=a[2];this.ha=!0;this.v.ia=!0;var d=this.K.power;d&&(d.textContent="Shutdown");this.b&&(sg(this,this.b,b,c,a),this.b.yb());this.Y&&(pg(this,b),b.clear());!c&&this.B&&(this.B.clear(),delete this.B);this.D=0}; -function pg(a,b){if(va("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.g||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.1"};d.url=a.url;d.user=c;d.type="bug";d.data=b;ua("http://www.pcjs.org/api/v1/report",d,!0)}} -function fg(a,b,c){var d,e="none";if(a.D)return null;a.D--;var f=new O(a,"1.30.1"),g=new O(a,"1.30.1","validate"),h=sa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Ia&&(c&&a.b.ja(),d=a.b.Ia(b,c),"object"===typeof d&&f.set(a.b.id,d),c&&(a.b.v.ia=!1,!1===d&&(e=null)));for(var h=bb(a.id),l=0;l>>d.F.ba;l=1}d.i("blockid physical blockaddr used size type");d.i("-------- --------- ---------- ------ ------ ----");for(var c=-1,m=0;l--;){var n=b[e];n.type==c?m++||d.i("..."):(c=n.type,m=Ib[c],n&&d.i(p(n.id,8)+" %"+p(e<>>c.ba].jc(d&c.f,d),this.g--,b&&Gf(a,b));return c};k.Ga=function(a,b){var c=65535,d=Z(a);-1!==d&&(this.g++,c=Jb(this.F,d),this.g--,b&&Gf(a,b));return c}; +k.Mb=function(a,b,c){var d=Z(a);if(-1!==d){this.g++;var e=this.F;e.$[(d&e.g)>>>e.ba].bc(d&e.f,b&255,d);this.g--;c&&Gf(a,c);M(this.b,!0)}};k.oc=function(a,b,c){var d=Z(a);if(-1!==d){this.g++;var e=this.F;e.$[(d&e.g)>>>e.ba].rc(d&e.f,b&65535,d);this.g--;c&&Gf(a,c);M(this.b,!0)}};function X(a){return{A:a,Fa:!1}}function Hf(a){return[a.A,a.Fa]}function If(a){return{A:a[0],Fa:a[1]}} +function Ff(a,b,c){var d;c=(c?a.R:a.cb).A;if(void 0!==b){d=b=tf(a,b);var e;if(d.match(/^[a-z_][a-z0-9_]*$/i))for(d=d.toUpperCase(),c=0;cd&&(d+=b.length);0>d&&(d=0);for(var e=b.length;db||7a?"R"+a:6==a?"SP":"PC"}k.zc=function(a){var b;0<=a&&(8>a?b=this.b.u[a]:16>a?b=this.b.Oa[a-8]:20>a?b=this.b.ya[a-16]:20==a&&(b=Tb(this.b)));return b}; +k.message=function(a,b){this.g||(b&&(a+=" @"+J(this,X(this.b.u[7]).A)),this.la&1073741824?this.wa.push(a):this.ua&&a==this.ua||(this.ua=a,this.la&-2147483648&&(this.ha(),a+=" (cpu halted)"),this.i(a),this.b&&(a=this.b,a.S-=a.b,a.b=0,a.pa=0,M(a))))}; +function zf(a){var b;if(Hd(a)){if(!a.N||!a.N.length){a.N=Array(1E3);for(b=0;b>>d.ba],!1)}a.S=["br"];if(a.G)for(b=1;b>>d.ba],!0);a.G=["bw"];a.nb=0} +k.hb=function(a,b,c){var d=!0;c||Pf(this,a,b,!1,!0);if(a!=this.f){var e=Z(b);if(-1===e)this.i("invalid address: "+J(this,b.A)),d=!1;else{var f=this.F;f.$[e>>>f.ba].hb(e&f.f,a==this.G)}}d&&(a.push(b),c?b.Fa=!0:(Qf(this,a,a.length-1,"set"),zf(this)));return d};function Pf(a,b,c,d,e){var f=!1;c=Z(c);for(var g=1;g>>d.ba],b==a.G));h.Fa||zf(a);break}}return f} +function Rf(a,b){for(var c=1;c>23)&65535,v=J(u,q);else if(8192==A)q=q.A-((f&63)<<1)&65535,v=J(u,q);else if(12288==A)v=J(u,f&7,1);else if(24576==A)v=J(u,f&63,1);else if(A=f&z,z&4032&&(A>>=6,z>>=6),z&63)switch(z=A&7,A&56){case 0:v=Kf(z);break;case 8:v="@"+Kf(z);break;case 16:7>z?v="("+Kf(z)+ +")+":(A=u.Ga(q,2),v="#"+J(u,A,0,!0));break;case 24:7>z?v="@("+Kf(z)+")+":(A=u.Ga(q,2),v="@#"+J(u,A,0,!0));break;case 32:v="-("+Kf(z)+")";break;case 40:v="@-("+Kf(z)+")";break;case 48:A=u.Ga(q,2);v=J(u,A,0,!0)+"("+Kf(z)+")";7==z&&(v=[v,J(u,A+q.A&65535)]);break;case 56:A=u.Ga(q,2),v="@"+J(u,A)+"("+Kf(z)+")",7==z&&(v=[v,J(u,A+q.A&65535)])}u=v;if(!u||!u.length){h="INVALID";break}"string"!=typeof u&&(l=u[1],u=u[0]);0b?(c=Kf(b),c+="="+J(a,d.u[b])):13>b?c="A"+(b-8)+"="+J(a,d.Oa[b-8]):16<=b&&20>b?c="S"+(b-16)+"="+J(a,d.ya[b-16]):20==b&&(c="PS="+J(a,Tb(d)));c&&(c+=" ");return c}function Wf(a){var b,c="";for(b=0;6>b;b++)c+=Vf(a,b);c=c+"\n"+(Vf(a,6)+Vf(a,7)+Vf(a,20));return c+=Uf(a,"T")+Uf(a,"N")+Uf(a,"Z")+Uf(a,"V")+Uf(a,"C")}k.tc=function(a,b){return a[0]>b[0]?1:a[0]>>0;for(b=0;b>>0,h=f.Xc;if(e>=g&&eb)){d.u[b]=f&65535;break}a.i("unknown register: "+e);return}M(d);a.i("updated registers:")}a.i(Wf(a));c&&(a.R=X(d.u[7]),Nf(a,J(a,a.R.A)))}}function ag(a,b){b=oa(b);var c=b.match(/^(['"])(.*?)\1$/);c?1h[0].indexOf("+"))){var m=h[0]+":";h[2]&&(m+=" "+h[2]);a.i(m)}h[3]&&(g=h[3],f=null);f=Tf(a,b,g,f);a.i(f);a.R=b;e-=b.A-l;c++}}} +function Sf(a,b,c){var d=!0;try{b.length&&"end"!=b?c||a.i(">> "+b):(a.Z&&(a.i("ended assemble at "+J(a,a.Y.A)),a.R=a.Y,a.Z=!1),b="");var e=b.charAt(0);if('"'==e||"'"==e)return!0;a.ua=null;if(hb(a)&&0n||"z"ja.length&&(a.i("note: only "+ja.length+" available"),Y=ja.length);ca-=Y;0>ca&&(null==ja[ja.length-1].A?(Y=ca+Y,ca=0):ca+=ja.length);var Oc=[];"call"==ze&&(jb=1E5,Oc=["CALL"]);for(void 0!==ye&&a.i(Y+" instructions earlier:");0=ja.length&&(ca=0);a.ob=Y;Be++;jb--}}Be||(a.i("no "+Ae+"history available"),a.ob=void 0)}else{var Wb=Ff(a,ia);if(Wb){var Xb=0;za&&("l"==za.charAt(0)&&(za=za.substr(1)||ug),Xb=uf(a,za)>>>0,65536>4||1;wg--&&0$b?String.fromCharCode($b):".";Yb--}lb&&(lb+="\n");lb+=ia+" "+Qc+(0==nb?" "+Ee:"")}lb&&a.i(lb);a.cb=Wb}}}}break;case "e":if("else"==g[0])break;var Ra,Rc,Sc,Tc,Uc=g[0],Vc=g[1];"eb"==Uc?(Ra=1,Rc=255,Sc=a.kb,Tc=a.Mb):"e"==Uc||"ew"==Uc?(Ra=2,Rc=65535,Sc=a.Ga,Tc=a.oc):Vc=null;if(null==Vc)a.i("edit memory commands:"),a.i("\teb [a] [...] edit bytes at address a"),a.i("\tew [a] [...] edit words at address a");else{var ac=Ff(a,Vc);if(ac)for(var bc=2;bcYc;){for(var Aa=null,Ag=256;65536>qb.A>>>0;){Zc.A=a.Ga(qb,2);if(null==qb.A||!Ag--)break;if(!(Zc.A&1)){for(var Bg=a,cc=Zc,Ge=null,rb=cc.A,He=rb,$c=1;6>=$c&& +rb;$c++){if(2<$c){cc.A=rb;var dc=Tf(Bg,cc);if(0<=dc.indexOf("JSR")){var Ie=dc.indexOf(" ");if(rb+(dc.indexOf(" ",Ie+1)-Ie-1)/2==He){Ge=dc;break}}}rb-=2}cc.A=He;if(Aa=Ge)break}}if(!Aa||null==Aa)break;var Je=null;if("ks"==zg){var Ke=Aa.match(/[0-9A-F]+$/);Ke&&(Je=$f(a,Ke[0]))}Aa=na(Aa,50)+" ;"+(Je||"stack="+J(a,qb.A));a.i(Aa);Yc++}Yc||a.i("no return addresses found")}break;case "l":if("ln"==g[0]){$f(a,g[1],!0);break}f=!0;break;case "m":a:{var ka,la=null,C=g[1];"?"==C&&(C=void 0);if(void 0!==C){var ta= +0;if("all"==C)ta=1878917119,C=null;else if("on"==C)la=!0,C=null;else if("off"==C)la=!1,C=null;else{"keys"==C&&(C="key");"kbd"==C&&(C="keyboard");for(ka in H)if(C==ka){ta=H[ka];la=!!(a.la&ta);break}if(!ta){a.i("unknown message category: "+C);break a}}if(ta)if("on"==g[2])a.la|=ta,la=!0;else if("off"==g[2]&&(a.la&=~ta,la=!1,1073741824==ta)){for(var ad=0;ad\nLicense: GPL version 3 or later ");this.i("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis ");for(b=0;bfg){if(hg(d,this.J)){this.B=new N(this,"1.30.1","failsafe");hg(this.B)&&(mg(this,d),a=2,ng(this.B));this.B.set("timestamp",sa());og(this.B);var e=this.f&&!this.G;if(1==a||va("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=lg(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?hg(d,g):("error"== +f&&"no machine state"!=g?(this.sa("Error: "+g),"unable to verify user"==g&&(Ca("user",""),this.g=null)):this.i(f+": "+g),ng(d),hg(d)?(c=lg(d),e=!0):c=!1))}e&&kg(this,c?d:null)}else 2==a&&d.clear()}else kg(this);delete this.J;delete this.N}e=bb(this.id);for(f=0;fa[1];a=a[2];this.ga=!0;this.v.ia=!0;var d=this.L.power;d&&(d.textContent="Shutdown");this.b&&(pg(this,this.b,b,c,a),this.b.Cb());this.W&&(mg(this,b),b.clear());!c&&this.B&&(this.B.clear(),delete this.B);this.D=0}; +function mg(a,b){if(va("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.g||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.1"};d.url=a.url;d.user=c;d.type="bug";d.data=b;ua("http://www.pcjs.org/api/v1/report",d,!0)}} +function cg(a,b,c){var d,e="none";if(a.D)return null;a.D--;var f=new N(a,"1.30.1"),g=new N(a,"1.30.1","validate"),h=sa();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.b&&a.b.Ha&&(c&&a.b.ha(),d=a.b.Ha(b,c),"object"===typeof d&&f.set(a.b.id,d),c&&(a.b.v.ia=!1,!1===d&&(e=null)));for(var h=bb(a.id),l=0;lf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), -a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){f=null,a=n.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");ua(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],g);Kg(a,b,c)}})}else c(a,null)} -function Lg(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ma(a))}function f(a){e("Error: "+a);l&&(--wg||Sa(!0));l=!1}var g,h,l=!0;wg++;$a[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css";r.styleSheet?r.styleSheet.cssText=m:r.appendChild(document.createTextNode(m));n.appendChild(r)}c|| -(c="/versions/pdp11/1.30.1/components.xsl");m=function(d,h){h?Ig(c,null,null,!1,e,function(d,l){l?(ab(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--wg||Sa(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--wg||Sa(!0)):f("invalid machine element: "+ -a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Ig(b,a,d,!0,e,m):Jg(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(q){f(q.message)}return l}window.embedPDP11=function(a,b,c,d){Sa(!1);return Lg(a,b,c,d)};window.enableEvents=Sa;window.sendEvent=Ta;})(); +k.oa=function(a,b,c){var d=this;switch(b){case "power":return this.L[b]=c,c.onclick=function(){d.D||(d.v.ia?cg(d,!1,!0):jg(d,d.Ib))},!0;case "reset":return this.L[b]=c,c.onclick=function(){if(d.v.ia&&!d.D)if(d.f&&!d.H){var a=va("Click OK to save changes to this PDPjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");cg(d,a,!0);!a&&d.S?window&&window.location.reload():d.Ib(fg)}else d.reset(),d.b&&d.b.Cb()},!0;case "save":if(fa())c.parentNode.removeChild(c);else return this.L[b]= +c,c.onclick=function(){var a=gg(d,!0);if(a){var b=!!(d.f&&!d.H||d.S),c=cg(d,b);b?qg(d,a,c):d.sa("Resume disabled, machine state not saved")}},!0}return!1}; +function gg(a,b){var c=a.g;c||((c=Ba("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=rg(a,c))||a.sa("The user ID is invalid.")):b&&a.sa("Browser local storage is not available"));return c} +function rg(a,b){a.g=null;b=ua(ga()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(Ca("user",b.data),a.g=b.data)}catch(d){t(d.message+" ("+c+")")}return a.g}function ig(a){var b=null;a.g&&(b=ga()+"/api/v1/user?req=load&user="+a.g+"&state="+sg(a,"1.30.1"));return b} +function qg(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=sg(a,"1.30.1");d.data=c;b=ua(ga()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), +a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(n){f=null,a=n.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");ua(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,n=/( [a-z]+=)(['"])(.*?)\2/g;m=n.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],g);Hg(a,b,c)}})}else c(a,null)} +function Ig(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ma(a))}function f(a){e("Error: "+a);l&&(--tg||Sa(!0));l=!1}var g,h,l=!0;tg++;$a[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var n=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css";r.styleSheet?r.styleSheet.cssText=m:r.appendChild(document.createTextNode(m));n.appendChild(r)}c|| +(c="/versions/pdp11/1.30.1/components.xsl");m=function(d,h){h?Fg(c,null,null,!1,e,function(d,l){l?(ab(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--tg||Sa(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--tg||Sa(!0)):f("invalid machine element: "+ +a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Fg(b,a,d,!0,e,m):Gg(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(q){f(q.message)}return l}window.embedPDP11=function(a,b,c,d){Sa(!1);return Ig(a,b,c,d)};window.enableEvents=Sa;window.sendEvent=Ta;})(); diff --git a/versions/pdpjs/1.30.1/pdp11.js b/versions/pdpjs/1.30.1/pdp11.js index a1de16dfc..a5013259a 100644 --- a/versions/pdpjs/1.30.1/pdp11.js +++ b/versions/pdpjs/1.30.1/pdp11.js @@ -1,4 +1,687 @@ -(function(){var k; +(function(){/* + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + It has been adapted from the JavaScript PDP 11/70 Emulator v1.3 written by Paul Nankervis + (paulnank@hotmail.com) as of August 2016 from http://skn.noip.me/pdp11/pdp11.html. This code + may be used freely provided the original author name is acknowledged in any modified source code. + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. + Jeff Parsons 2012-2016 + + This file is part of PCjs, a computer emulation software project at . + + PCjs is free software: you can redistribute it and/or modify it under the terms of the + GNU General Public License as published by the Free Software Foundation, either version 3 + of the License, or (at your option) any later version. + + PCjs is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without + even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along with PCjs. If not, + see . + + You are required to include the above copyright notice in every source code file of every + copy or modified version of this work, and to display that copyright notice on every screen + that loads or runs any version of this software (see COPYRIGHT in /modules/shared/lib/defines.js). + + Some PCjs files also attempt to load external resource files, such as character-image files, + ROM files, and disk image files. Those external resource files are not considered part of PCjs + for purposes of the GNU General Public License, and the author does not claim any copyright + as to their contents. +*/ +var k; function aa(a){var b=16,c;if(a){b||(b=10);var d=a.charAt(0),e=0=e?48:55),d=String.fromCharCode(e)+d;a>>=4}return(c?"0x":"")+d}function ba(a){var b=a,c=a.lastIndexOf("/");0<=c&&(b=a.substr(c+1));c=b.indexOf("&");0":">",'"':""","'":"'"};function ga(a){return a.replace(/[&<>"']/g,function(a){return fa[a]})}function ha(a){return String.prototype.trim?a.trim():a.replace(/^\s+|\s+$/g,"")} @@ -9,151 +692,151 @@ typeof b){var l="",m;for(m in b)b.hasOwnProperty(m)&&(l&&(l+="&"),l+=m+"="+encod function r(a){window&&window.alert(a)}function la(a){var b=!1;window&&(b=window.confirm(a));return b}var ma=null;function na(){if(null==ma){var a=!1;if(window)try{window.localStorage.setItem("PCjs.localStorage","PCjs.localStorage"),a="PCjs.localStorage"==window.localStorage.getItem("PCjs.localStorage"),window.localStorage.removeItem("PCjs.localStorage")}catch(b){a=!1}ma=a}return ma}function oa(a){var b;if(window)try{b=window.localStorage.getItem(a)}catch(c){}return b} function pa(a,b){try{return window.localStorage.setItem(a,b),!0}catch(c){}return!1}function qa(a){if(window){var b=window?window.navigator.userAgent:"";return"iOS"==a&&b.match(/(iPod|iPhone|iPad)/)&&b.match(/AppleWebKit/)||"MSIE"==a&&b.match(/(MSIE|Trident)/)||0<=b.indexOf(a)?!0:!1}return!1}var t={init:[],show:[],exit:[]},ra=!1,sa=!1,ta=!0;function ua(a,b){if(window){var c=window[a];window[a]="function"!==typeof c?b:function(){c&&c();b()}}}function u(a){t.init.push(a)} function va(a){if(ta)try{for(var b=0;bb?this.cb=this.id:(this.wb=this.id.substr(0,b),this.cb=this.id.substr(b+1));this[a]=c;this.i={ready:!1,Lc:!1,Mc:!1,P:!1,error:!1};this.lb=null;this.i.error=!1;this.A={};this.K=null;x.push(this)}var ya=void 0,za={}; +function v(a,b,c){this.type=a;b||(b={id:"",name:""});this.id=b.id||"";this.name=b.name;this.Pb=b.comment;this.qc=b;b=this.id.indexOf(".");0>b?this.hb=this.id:(this.Cb=this.id.substr(0,b),this.hb=this.id.substr(b+1));this[a]=c;this.i={ready:!1,Vc:!1,Wc:!1,P:!1,error:!1};this.pb=null;this.i.error=!1;this.A={};this.K=null;x.push(this)}var ya=void 0,za={}; if(window){ya||(ya=window.location.search.substr(1));for(var Aa,Ba=/\+/g,Ca=/([^&=]+)=?([^&]*)/g;Aa=Ca.exec(ya);)za[decodeURIComponent(Aa[1].replace(Ba," "))]=decodeURIComponent(Aa[2].replace(Ba," "))}function Da(a){function b(){}if(window){if(!a)throw new TypeError;if(Object.create)return Object.create(a);var c=typeof a;if("object"!==c&&"function"!==c)throw new TypeError;}b.prototype=a;return new b} function y(a,b){b||(b=v);a.prototype=Da(b.prototype);a.prototype.constructor=a;a.prototype.parent=b.prototype}if(window){window.PCjs||(window.PCjs={});var Ea=window.PCjs.Machines||(window.PCjs.Machines={}),x=window.PCjs.Components||(window.PCjs.Components=[])}else Ea={},x=[];function Fa(a,b,c){Ea[a]&&b&&(Ea[a][b]=c)}function z(a){var b,c=[];a&&(a=0<(b=a.indexOf("."))?a.substr(0,b+1):"");for(b=0;b>1)+2;10>this.c&&(this.c=10);15>2;this.h=this.g-1;this.o=this.l/this.g|0;this.qa=[];this.m=null;this.Wa=this.G;a=new G;Ma(a,this.K);this.b=Array(this.o);for(b=0;b>8:e[2](b)&255):b&1&&(e=d.qa[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);return 0<=c?c:c=d.Wa(b|4186112,-1,1)}function Oa(a,b,c){var d=!1,e=this.controller,f=e.qa[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.qa[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](c):0,f[3](a&255|b<<8,c),d=!0);d||e.Wa(c|4186112,b,1)} -function Pa(a,b){var c=-1,d=this.controller;(a=d.qa[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));return 0<=c?c:c=d.Wa(b|4186112,-1,0)}function Qa(a,b,c){var d=!1,e=this.controller;if(a=e.qa[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d||e.Wa(c|4186112,b,0)}La.prototype.reset=function(){this.m&&this.m()};La.prototype.G=function(){return 0};La.prototype.la=function(a,b){b||this.reset();return!0}; -function Ra(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.c;0g&&(q=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.Sa)return l.sb+=l.Sa-f,l.Sa=f,!0;if(f>=l.Sa+l.sb){q=l.size-(f-m);q>g&&(q=g);l.sb=f-l.Sa+q;f=m+a.g;g-=q;h++;continue}}return Ta(1,f,g)}f=new G(f,q,a.g,d,e);Ma(f,a.K,l);a.b[h++]=f;f=m+a.g;g-=q}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Ua[d]+" at "+n(b,8,!0)),!0):Ta(2,b,c)}function Va(a,b){return a.b[(b&a.u)>>>a.c].Cb(b&a.h,b)} -function Wa(a){for(var b=0,c=[],d=0;d>1)+2;10>this.c&&(this.c=10);15>2;this.h=this.g-1;this.o=this.l/this.g|0;this.sa=[];this.m=null;this.$a=this.G;a=new G;Ma(a,this.K);this.b=Array(this.o);for(b=0;b>8:e[2](b)&255):b&1&&(e=d.sa[a&-2])&&e[2]&&(c=e[2](b&-2)>>8);return 0<=c?c:c=d.$a(b|4186112,-1,1)}function Oa(a,b,c){var d=!1,e=this.controller,f=e.sa[a];if(f)if(f[1])f[1](b,c),d=!0;else{if(f[3]){a=f[2]?f[2](c):0;if(c&1)f[3](a&255|b<<8,c&-2);else f[3](a&-256|b,c);d=!0}}else c&1&&(f=e.sa[a&-2])&&f[3]&&(c&=-2,a=f[2]?f[2](c):0,f[3](a&255|b<<8,c),d=!0);d||e.$a(c|4186112,b,1)} +function Pa(a,b){var c=-1,d=this.controller;(a=d.sa[a])&&(a[2]?c=a[2](b):a[0]&&(c=a[0](b)|a[0](b+1)<<8));return 0<=c?c:c=d.$a(b|4186112,-1,0)}function Qa(a,b,c){var d=!1,e=this.controller;if(a=e.sa[a])a[3]?(a[3](b,c),d=!0):a[1]&&(a[1](b&255,c),a[1](b>>8,c+1),d=!0);d||e.$a(c|4186112,b,0)}La.prototype.reset=function(){this.m&&this.m()};La.prototype.G=function(){return 0};La.prototype.na=function(a,b){b||this.reset();return!0}; +function Ra(a,b,c,d,e){for(var f=b,g=c,h=f>>>a.c;0g&&(q=g);if(l&&l.size){if(l.type==d&&l.controller==e){if(f+g<=l.Wa)return l.vb+=l.Wa-f,l.Wa=f,!0;if(f>=l.Wa+l.vb){q=l.size-(f-m);q>g&&(q=g);l.vb=f-l.Wa+q;f=m+a.g;g-=q;h++;continue}}return Ta(1,f,g)}f=new G(f,q,a.g,d,e);Ma(f,a.K,l);a.b[h++]=f;f=m+a.g;g-=q}return 0>=g?(a.status(Math.floor(c/1024)+"Kb "+Ua[d]+" at "+n(b,8,!0)),!0):Ta(2,b,c)}function Va(a,b){return a.b[(b&a.u)>>>a.c].Gb(b&a.h,b)} +function Wa(a){for(var b=0,c=[],d=0;d>5&3;c.fb=a>>1&15;c.mb=a&257?a&1?6:4:0;cb(c);a=c.G;a&1|256&&(b=this.a.Ja&16?1:2);this.c.Ma=this.c.Ma&-8|b};k.lc=function(){return db(this.a)};k.Ec=function(a){eb(this.a,a&-1809|db(this.a)&1808);this.a.j|=128}; -function fb(a){var b=a.g,c,d,e,f=b.X>>13&7;"undefined"===typeof b.T[f]&&(b.T[f]={cache:[],postProcess:a.rc,drive:f,blocksize:256,mapped:0,maxblock:b.Ha[f]*b.J[f],url:"rk"+f+".dsk"});b.D&=-129;switch(b.D>>1&7){case 0:b.Za=2496;b.S=0;b.D=128;b.X=0;break;case 1:if((b.X>>4&511)>=b.Ha[f]){b.S|=32832;b.D|=49152;break}if((b.X&15)>=b.J[f]){b.S|=32800;b.D|=49152;break}c=(b.X>>4&511)*b.J[f]+(b.X&15);d=(b.D&48)<<12|b.Ya;e=65536-b.$a&65535;gb(a,b.T[f],c,d,e);return;case 2:if((b.X>>4&511)>=b.Ha[f])b.S|=32832, -b.D|=49152;else if((b.X&15)>=b.J[f])b.S|=32800,b.D|=49152;else{c=(b.X>>4&511)*b.J[f]+(b.X&15);d=(b.D&48)<<12|b.Ya;e=65536-b.$a&65535;a.pb(b.T[f],c,d,e);return}}b.Za=f<<13|b.Za&8176|b.X%9&15;I(a.a,20,5,144,function(){b.D=b.D&65534|128;return!!(b.D&64)})}k.rc=function(a,b,c,d,e){var f=this.g;f.Ya=d&65535;f.D=f.D&-49|d>>12&48;f.$a=65536-e&65535;switch(a){case 1:f.S|=33024;f.D|=49152;break;case 2:f.S|=33792,f.D|=49152}I(this.a,20,5,144,function(){f.D=f.D&65534|128;return!!(f.D&64)})}; -function hb(a){var b=a.h,c,d,e,f=b.v>>8&3;b.v&=-2;"undefined"===typeof b.T[f]&&(b.T[f]={cache:[],postProcess:a.sc,drive:f,blocksize:128,mapped:1,maxblock:b.Ha[f]*b.J[f],url:"rl"+f+".dsk"});switch(b.v>>1&7){case 2:b.xa&8&&(b.v&=63);b.xa=b.$b[f]|b.Ba&64;break;case 3:1==(b.L&3)&&(b.Ba=b.L&4?b.Ba+(b.L&65408)&65408|b.L<<2&64:b.Ba-(b.L&65408)&65408|b.L<<2&64,b.L=b.Ba);break;case 4:b.xa=b.Ba;break;case 5:if(b.L>>6>=b.Ha[f]){b.v|=37888;break}if((b.L&63)>=b.J[f]){b.v|=37888;break}c=(b.L>>6)*b.J[f]+(b.L&63); -d=(b.ra&63)<<16|b.Va;e=65536-b.xa&65535;gb(a,b.T[f],c,d,e);return;case 6:if(b.L>>6>=b.Ha[f])b.v|=37888;else if((b.L&63)>=b.J[f])b.v|=37888;else{c=(b.L>>6)*b.J[f]+(b.L&63);d=(b.ra&63)<<16|b.Va;e=65536-b.xa&65535;a.pb(b.T[f],c,d,e);return}}I(a.a,20,5,112,function(){b.v|=129;return!!(b.v&64)})} -k.sc=function(a,b,c,d,e){var f=this.h;f.Va=d&65535;f.v=f.v&-49|d>>12&48;f.ra=d>>16&63;f.L=~~(c/f.J[b.ja])<<6|c%f.J[b.ja];f.Ba=f.L;f.xa=65536-e&65535;switch(a){case 1:f.v|=33792;break;case 2:f.v|=40960}I(this.a,20,5,112,function(){f.v|=129;return!!(f.v&64)})};function ib(a){a=a.l;a.F=2176;a.aa=0;a.V=[4544,4544,4544,4544,4544,4544,4544,4544];a.Oa=[0,0,0,0,0,0,0,0];a.La=a.Pa=a.Na=a.Aa=a.Fb=0} -function jb(a,b){var c=a.l,d,e,f;c.F&=-16513;c.aa&=-2049;c.V[b]&=-1153;I(a.a,-1,0,172);"undefined"===typeof c.T[b]&&(c.T[b]={cache:[],postProcess:a.tc,drive:b,blocksize:256,mapped:0,maxblock:c.ub[0]*c.Ga[0]*c.J[0],url:"rp"+b+".dsk"});switch(c.F&63){case 5:c.rb[b]=c.ma[b];c.F|=32896;c.V[b]|=32896;c.La|=1<=c.ub[0]||c.ba[b]>>8>=c.Ga[0]||(c.ba[b]&255)>=c.J[0]){c.Oa[b]|=1024;c.F|=49152;break}d=(c.ma[b]*c.Ga[0]+(c.ba[b]>>8))*c.J[0]+ -(c.ba[b]&255);e=(c.Aa&63)<<16|c.Na;f=65536-c.Pa&65535;gb(a,c.T[b],d,e,f);return;case 57:if(c.ma[b]>=c.ub[0]||c.ba[b]>>8>=c.Ga[0]||(c.ba[b]&255)>=c.J[0])c.Oa[b]|=1024,c.F|=49152;else{d=(c.ma[b]*c.Ga[0]+(c.ba[b]>>8))*c.J[0]+(c.ba[b]&255);e=(c.Aa&63)<<16|c.Na;f=65536-c.Pa&65535;a.pb(c.T[b],d,e,f);return}}I(a.a,3,5,172,function(){c.F=c.F&65534|128;c.V[b]|=128;return!!(c.F&64)})} -k.tc=function(a,b,c,d,e){var f=this.l;f.Pa=65536-e&65535;f.Na=d&65535;f.F=f.F&-769|d>>8&768;f.Aa=d>>16&63;e=~~(c/f.J[0]);d=~~(e/f.Ga[0]);f.ba[b.ja]=e%f.Ga[0]<<8|c%f.J[0];f.rb[b.ja]=f.ma[b.ja]=d;f.La|=1<=b.ic-1&&(f.V[b.ja]|=1024);switch(a){case 1:f.aa|=512;f.F|=49152;break;case 2:f.aa|=2048,f.F|=49152}I(this.a,20,5,172,function(){f.V[b.ja]|=128;f.F=f.F&65534|128;return!!(f.F&64)})}; -function kb(a,b,c,d,e,f){var g=~~((f+c.sa-1)/c.sa),h=new XMLHttpRequest;2048>g&&d+2048lb(this.a,a.hc?mb(this.a,c):c,a.cache[b][e])){a.ob(2,a,b,c,d);return}c+=2;--d}b++}a.ob(0,a,b,c,d)}; -function gb(a,b,c,d,e){for(var f,g;0g){b.ob(2,b,c,d,e);return}b.cache[c][f]=g;d+=2;--e}c++}b.ob(0,b,c,d,e)}k.reset=function(){this.c.Ma=this.c.Ma&-120|20;this.b.wa=0;this.g.D=128;this.h.v=128;ib(this)}; -k.ac=function(a,b,c){var d,e,f=this.a;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=f.za&65280:(a&1&&(b<<=8),f.za=b|255,d=0);break;case 4194298:if(0>b)d=f.Eb;else{a&1&&(b<<=8);if(d=b&65024){e=d>>9;do d+=34;while(e>>=1)}f.Eb=d;f.j|=2}break;case 4194294:if(70!==f.Ia)return K(f,4);0>b?d=f.s:d=f.s=0;break;case 4194292:if(70!==f.Ia)return K(f,4);d=1;break;case 4194290:if(70!==f.Ia)return K(f,4);d=0;break;case 4194288:if(70!==f.Ia)return K(f,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&= -255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==f.Ia)return K(f,4);e=a-4194272>>1;0>b?d=f.zb[e]:(d=J(this,f.zb[e],a,b,c),0<=d&&(f.zb[e]=d));break;case 4194254:return a&1?f.C>>14&1?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[3]=b),d=f.da[3]):f.C>>14&0?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[1]=b),d=f.da[1]),d;case 4194252:case 4194250:case 4194248:return e=a&7,f.C&2048?(0<=b&&(f.f[e]=b),d=f.f[e]):(0<=b&&(f.Ka[e]=b),d=f.Ka[e]),d;case 4194246:return a& -1?(0<=b&&(f.f[7]=b),d=f.f[7]):f.C>>14&0?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[0]=b),d=f.da[0]),d;case 4194244:case 4194242:case 4194240:return e=a&7,f.C&2048?(0<=b&&(f.Ka[e]=b),d=f.Ka[e]):(0<=b&&(f.f[e]=b),d=f.f[e]),d;default:return f.s|=16,K(f,4)}break;case 4194176:e=a>>1&31;d=J(this,f.R[3][e],a,b,c);0<=d&&(f.R[3][e]=d,f.R[3][e&15]&=65295);break;case 4194112:switch(a&-2){case 4194174:d=J(this,f.qb,a,b,c);0<=d&&(f.qb=d);break;case 4194172:d=f.ya;d&65280&&(d=(d<<8|d>>8)&65535);break;case 4194168:0> -b?d=this.c.Bc&65535:(d=J(this,this.c.data,a,b,c),0<=d&&(this.c.data=d));break;default:return f.s|=16,K(f,4)}break;case 4194048:e=this.g;switch(a&-2){case 4194048:d=J(this,e.Za,a,b,c);0<=d&&(e.Za=d);break;case 4194050:d=J(this,e.S,a,b,c);0<=d&&(e.S=d);break;case 4194052:d=J(this,e.D,a,b,c);0<=b&&0<=d&&(e.D=d&-36993|e.D&36992,e.D&1&&fb(this));break;case 4194054:d=J(this,e.$a,a,b,c);0<=d&&(e.$a=d);break;case 4194056:d=J(this,e.Ya,a,b,c);0<=d&&(e.Ya=d);break;case 4194058:d=J(this,e.X,a,b,c);0<=d&&(e.X= -d);break;case 4194060:break;case 4194062:d=J(this,e.Sb,a,b,c);0<=d&&(e.Sb=d);break;default:return f.s|=16,K(f,4)}break;case 4193728:var g=this.l;e=g.aa&7;switch(a&-2){case 4193728:d=J(this,g.F,a,b,c);0<=b&&0<=d&&(g.Aa=g.Aa&60|d>>8&3,g.F=d&17279|g.F&34944|2048,d&1&&g.F&128?jb(this,e):192==(d&192)&&I(f,0,5,172));break;case 4193730:d=J(this,g.Pa,a,b,c);0<=d&&(g.Pa=d);break;case 4193732:d=J(this,g.Na,a,b,c);0<=d&&(g.Na=d&65534);break;case 4193734:d=J(this,g.ba[e],a,b,c);0<=d&&(g.ba[e]=d&7967);break;case 4193736:d= -J(this,g.aa,a,b,c);0<=d&&(g.aa=d&63|g.aa&65472,d&128&&ib(this));break;case 4193738:d=g.V[e];break;case 4193740:d=g.Oa[e];break;case 4193742:d=J(this,g.La,a,b,c);0<=d&&(g.La=d&255);break;case 4193744:d=g.yc[e];break;case 4193746:d=J(this,g.Tb,a,b,c);0<=d&&(g.Tb=d);break;case 4193748:d=J(this,g.Ub[e],a,b,c);0<=d&&(g.Ub[e]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=g.zc[e];break;case 4193754:d=J(this,g.Vb[e],a,b,c);0<=d&&(g.Vb[e]=d);break;case 4193756:d=J(this,g.ma[e],a,b,c);0<=d&&(g.ma[e]= -d&511);break;case 4193758:g.rb[e]=g.ma[e];d=g.rb[e];break;case 4193760:d=g.wc[e];break;case 4193762:d=g.xc[e];break;case 4193764:d=g.uc[e];break;case 4193766:d=g.vc[e];break;case 4193768:d=J(this,g.Aa,a,b,c);0<=d&&(g.Aa=d&63,g.F=g.F&-769|(d&3)<<8);break;case 4193770:d=J(this,g.Fb,a,b,c);0<=d&&(g.Fb=d);break;default:return f.s|=16,K(f,4)}break;case 4192512:e=this.h;switch(a&-2){case 4192512:d=J(this,e.v,a,b,c);0<=b&&0<=d&&(e.ra=e.ra&60|d>>4&3,e.v=e.v&-1023|d&1022,e.v&128||hb(this));break;case 4192514:d= -J(this,e.Va,a,b,c);0<=d&&(e.Va=d&65534);break;case 4192516:d=J(this,e.L,a,b,c);0<=d&&(e.L=d);break;case 4192518:d=J(this,e.xa,a,b,c);0<=d&&(e.xa=d);break;case 4192520:d=J(this,e.ra,a,b,c);0<=d&&(e.ra=d&63,e.v=e.v&-49|(e.ra&3)<<4);break;default:return f.s|=16,K(f,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=f.Ja:(d=J(this,f.Ja,a,b,c),0<=d&&(70!==f.Ia&&(d&=-49),f.Ja=d,f.nb[0]=d&4?15:7,f.nb[1]=d&2?15:7,f.nb[3]=d&1?15:7,f.mb&&(e=2,f.Ja&16&&(e=1),this.c.Ma=this.c.Ma&-8|e)));break;default:return f.s|= -16,K(f,4)}break;case 4191424:e=a>>1&31;d=J(this,f.R[0][e],a,b,c);0<=d&&(f.R[0][e]=d,f.R[0][e&15]&=65295);break;case 4191360:e=a>>1&31;d=J(this,f.R[1][e],a,b,c);0<=d&&(f.R[1][e]=d,f.R[1][e&15]&=65295);break;case 4190400:case 4190336:if(70!==f.Ia)return K(f,4);e=a>>2&31;d=f.ab[e];a&2&&(d>>=16);d&=65535;0<=b&&(d=J(this,d,a,b,c),0<=d&&(f.ab[e]=a&2?d<<16|f.ab[e]&65535:f.ab[e]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0> -b)d=Za[a>>1&255];else return f.s|=16,K(f,4);break;default:return f.s|=16,K(f,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)");return d};var ob={},bb=(ob[65382]=[null,null,H.prototype.jc,H.prototype.Cc,"LKS"],ob[65402]=[null,null,H.prototype.kc,H.prototype.Dc,"MMR0"],ob[65534]=[null,null,H.prototype.lc,H.prototype.Ec,"PSW"],ob);u(function(){for(var a=D(document,"pdp11","device"),b=0;b>1),this.a=new Int32Array(this.b,0,c>>2),vb(this,rb?wb:xb);else{this.a=Array(c>>2);for(a=0;a>2),b=0;b>8,c)},N:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},fa:function(a){var b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},oa:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<>8);this.ta=!0},H:function(a,b){return this.I(a,b)},Z:function(a,b){return this.ca(a, -b)},ha:function(a,b,c){this.A||this.Zb(a,b,c)},Ca:function(a,b,c){this.A||this.Da(a,b,c)},G:function(a){return this.c[a]},M:function(a){return this.c[a]},W:function(a){return this.g.getUint16(a,!0)},ea:function(a){return this.l[a>>1]},ga:function(a,b){this.c[a]=b;this.ta=!0},na:function(a,b){this.c[a]=b;this.ta=!0},pa:function(a,b){this.g.setUint16(a,b,!0);this.ta=!0},Ea:function(a,b){this.l[a>>1]=b;this.ta=!0}}; -function Ma(a,b,c){a.K=b;a.h=a.u=0;c&&((a.h=c.h)&&zb(a,Ab,!1),(a.u=c.u)&&Bb(a,Ab,!1))}function Bb(a,b,c){c&&a.u||(a.tb=!a.A&&b[1]||a.B,a.Hc=!a.A&&b[3]||a.w);if(c||void 0===c)a.Zb=b[1]||a.B,a.Da=b[3]||a.w}function zb(a,b,c){c&&a.h||(a.Cb=b[0]||a.m,a.oc=b[2]||a.o);if(c||void 0===c)a.I=b[0]||a.m,a.ca=b[2]||a.o}function vb(a,b){b||(b=Cb);zb(a,b,void 0);Bb(a,b,void 0)}var Cb=[],yb=[G.prototype.N,G.prototype.oa,G.prototype.fa,G.prototype.Fa],Ab=[G.prototype.H,G.prototype.ha,G.prototype.Z,G.prototype.Ca]; -if(Ia)var xb=[G.prototype.G,G.prototype.ga,G.prototype.W,G.prototype.pa],wb=[G.prototype.M,G.prototype.na,G.prototype.ea,G.prototype.Ea];function Db(a,b){v.call(this,"CPU",a,Db);var c=a.multiplier||1;this.bb=a.cycles||b;this.ga=c;this.Ab=Math.round(this.bb/1E4)/100;this.na=this.Ab*this.ga;this.i.$=!1;this.i.Wb=!1;this.i.Ua=a.autoStart;this.i.Hb=!1;this.i.kb=!1;this.hb=this.oa=0;this.ib=a.csStart;this.Da=a.csInterval;this.Ea=a.csStop;this.M=[];this.Qb=this.Ac.bind(this);F(this)}y(Db); -var Eb=["power","reset"];k=Db.prototype;k.va=function(a,b,c,d){this.B=a;this.u=b;this.K=d;for(b=0;b>=3;d=""+e}else d=n(c,d);else d="--------".substr(0,d||4);a.A[b].textContent!=d&&(a.A[b].textContent=d)}} -k.Y=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.A[b]=c;a=!0;break;case "run":this.A[b]=c;c.onclick=function(){var a;if(a=d.B)if(a=d.B,a.i.P)a=!0;else{var b=null,c,h=z(a.id);for(c=0;ca.ea/a.na&&(b=1),a.ga=b,b=a.Ab*a.ga,a.na!=b)){a.na=b;b=a.na.toFixed(2)+"Mhz";var c=a.A.setSpeed;c&&(c.textContent=b);a.U("target speed: "+b)}Nb(a,a.ca);a.ca=0;a.Z=ja();a.fa=0;Ob(a)}function $a(a,b){var c=a.M.length;a.M.push([-1,b]);return c}function ab(a,b,c){0<=b&&ba.M[b][0]&&(c*=a.bb*a.ga/1E3,a.M[b][0]=c)} -k.Ac=function(){if(this.i.$){this.Bb>=this.bb&&Ob(this,!0);this.Ra=0;this.gb=ja();if(this.fa){var a=this.gb-this.fa;a>this.Nb&&(this.Z+=a,this.Z>this.gb&&(this.Z=this.gb))}try{do{for(var b,c=this.i.kb?1:this.jb,d=this.M.length-1;0<=d;d--){var e=this.M[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.Xb(b)}catch(m){if("number"!=typeof m)throw m;}for(var f=this.W-this.a,a=f,g=this.M.length-1;0<=g;g--){var h=this.M[g];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.Ra+=f;this.ca+=f;Nb(this,0,!0);a=f;if(this.i.kb){var l= -!1;this.hb=this.hb+this.Lb()|0;this.oa-=a;0>=this.oa&&(this.oa+=this.Da,l=!0);0<=this.Ea&&this.Ea<=Pb(this)&&(this.Da=this.Ea=-1,Hb(this),Lb(this),l=!0);l&&this.U(Pb(this)+" cycles: checksum="+n(this.hb))}this.Fa-=f;if(0>=this.Fa){this.Fa+=this.jb;15<=++this.Pb&&(this.B&&this.B.Qa(),this.Pb=0);break}}while(this.i.$)}catch(m){Lb(this);Ib(this);this.B&&this.B.stop(ja(),Pb(this));b=m.stack||m.message;this.i.error=!0;this.O(b);return}if(this.i.$){b=setTimeout;c=this.Qb;this.fa=ja();d=this.Nb;this.Ra&& -(d=Math.round(d*this.Ra/this.jb));d-=this.fa-this.gb;if(e=this.fa-this.Z)this.ea=Math.round(this.ca/(10*e))/100,864E5<=e&&(this.ha=0,Mb(this));if(0>d||this.ead&&(this.Z-=d),d=0;this.Bb+=this.Ra;this.fa+=d;b(c,d)}}};function Jb(a){var b;a.i.error?(a.U(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.i.$)a.U(a.toString()+" busy");else{Mb(a);a.i.$=!0;a.i.Wb=!0;a.Ca&&a.Ca.start();if(b=a.A.run)b.textContent="Halt";a.B&&a.B.start(a.Z,Pb(a));Ib(a,!0);setTimeout(a.Qb,0)}}k.Xb=function(){return 0}; -function Lb(a){if(a.i.$){a.W-=a.a;a.a=0;Nb(a,a.ca);a.ca=0;a.i.$=!1;a.Ca&&a.Ca.stop();var b=a.A.run;b&&(b.textContent="Run");a.B&&a.B.stop(ja(),Pb(a));Ib(a)}a.i.complete=void 0}function Ib(a,b){a.B&&a.B.Qa(b)} -function Qb(a){this.gc=a.resetAddr||0;Db.call(this,a,6666667);this.Kb=0;this.decode=Rb.bind(this);this.l=65536;this.g=32768;this.h=65535;this.m=32768;this.C=15;this.f=[0,0,0,0,0,0,0,this.gc];this.Ka=[0,0,0,0,0,0];this.da=[0,0,0,0];this.fb=this.w=0;this.R=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.ab=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.zb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.c=this.b=this.vb=this.H=this.I=this.j=0;this.Ia=70;this.pa=-1;Sb(this);this.i.complete=this.i.bc=!1}y(Qb,Db);k=Qb.prototype;k.reset=function(){this.i.$&&Lb(this);Sb(this);Gb(this);this.i.error=!1;this.parent.reset.call(this)}; -function Sb(a){a.za=255;a.s=0;a.Eb=0;a.G=0;a.ya=0;a.qb=0;a.Ja=0;a.mb=0;a.eb=0;a.nb=[7,7,7,7];a.o=[];a.j|=2;cb(a)}function cb(a){a.mb?(a.Jb=65536,a.N=a.ec):(a.Jb=0,a.N=a.dc)}k.Lb=function(){return 0};k.save=function(){var a=new L(this);a.set(0,[]);a.set(1,[this.ha,this.ga]);a.set(2,Wa(this.u));return a.data()}; -k.restore=function(a){var b=a[1];this.ha=b[1];Mb(this,b[3]);a:{b=this.u;a=a[2];var c;for(c=0;cb){a.o[f].ia-=b;break}b-=a.o[f].ia}a.o.splice(f+1,0,{ia:b,Rb:c<<5&224,Yb:d,xb:e})}a.j|=2}function db(a){return a.C=a.C&63728|a.ua()|(a.h&65535?0:4)|(a.g&32768?2:0)|M(a)} -function eb(a,b){a.m=b<<12;a.h=~b&4;a.g=b<<14;a.l=b<<16;if((b^a.C)&2048)for(var c=a.Ka.length;0<=--c;){var d=a.f[c];a.f[c]=a.Ka[c];a.Ka[c]=d}a.w=b>>14&3;c=a.C>>14&3;a.w!=c&&(a.da[c]=a.f[6],a.f[6]=a.da[a.w]);a.j|=2;a.C=b}function O(a,b){a.j&128||(a.m=a.h=b,a.g=0)}function P(a,b,c){a.j&128||(a.m=a.h=a.l=b,a.g=c||0)}function Ub(a,b,c,d){a.j&128||(a.m=a.h=a.l=b,a.g=(c^b)&(d^b))}function Q(a,b){a.j&128||(a.m=a.h=a.l=b,a.g=a.m^a.l>>1)}function Vb(a,b,c,d){a.j&128||(a.m=a.h=a.l=b,a.g=(c^d)&(d^b))} -function K(a,b){var c=!1;0>a.pa?a.pa=db(a):a.w||(b=4,c=!0);a.G&57344||(a.ya=63222,a.qb=b);a.w=0;var d=N(a,b|65536),e=N(a,b+2&65535|65536);eb(a,e&-12289|a.pa>>2&12288);c&&(a.s|=4,a.f[6]=4);Wb(a,a.pa);Wb(a,a.f[7]);a.f[7]=d&65535;a.j&=-113;a.pa=-1;throw b;}function Xb(a){var b=Yb(a),c=Yb(a)&-1793;a.C&49152&&(c=c&-225|a.C&63712);a.f[7]=b&65535;eb(a,c);a.j&=-17} -function mb(a,b){var c=b>>13&31;31>c?a.Ja&32&&(b=a.ab[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} -function Zb(a,b,c){var d,e,f,g=0;if(c&a.mb){d=b>>13&a.nb[a.w];e=a.R[a.w][d];f=(a.R[a.w][d+16]<<6)+(b&8191)&4194303;a.Ja&16?3932160<=f&&4186112>f&&(f=mb(a,f&262143)):(f&=262143,253952<=f&&(f|=4186112));3932160>f&&3915776<=f&&(a.s|=32,K(a,4));switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384));a.R[a.w][d]=e;if(4194170!== -f||a.w)a.eb=a.w,a.fb=d;g&&(g&57344&&(0<=a.pa&&(g|=128),a.G&57344||(a.G=a.G|g|a.eb<<5|a.fb<<1),K(a,168)),a.G&61440||!(4191360>f||4194239>>a.c].oc(b&a.h,b)}function N(a,b){return nb(a,Zb(a,b,2))}function lb(a,b,c){b&1&&(a.s|=64,K(a,4));a=a.u;a.b[(b&a.u)>>>a.c].Hc(b&a.h,c&65535,b)}function Yb(a){var b=N(a,a.f[6]|65536);a.f[6]=a.f[6]+2&65535;return b} -function Wb(a,b){var c=a.f[6]-2&65535;a.f[6]=c;a.G&57344||(a.ya=a.ya<<8|246);!a.w&&c<=a.za&&4c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.f[c];7!==c&&(e|=g);e=N(a,e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.f[c]+f&65535;7!==c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.f[c]-2&65535;7!==c&&(e|=g);e=N(a,e)|g;a.a-=8;break; -case 6:return e=Tb(a),e=e+a.f[c]&65535|g,a.a-=6,e;case 7:return e=Tb(a),e=e+a.f[c]&65535,e=N(a,e|65536)|g,a.a-=10,e}a.f[c]=a.f[c]+f&65535;!g||a.G&57344||(a.ya=a.ya<<8|f<<3&248|c);6==c&&!a.w&&d&4&&0>=f&&(a.f[6]<=a.za||65534<=a.f[6])&&(a.f[6]<=a.za-32?(a.s|=4,a.f[6]=4,K(a,4)):(a.s|=8,a.j|=64));return e}k.dc=function(a,b,c){return $b(this,a,b,c)};k.ec=function(a,b,c){return Zb(this,$b(this,a,b,c),c)}; -function ac(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=$b(a,b,d,2),c&65536||61440!==(a.C&61440)&&(d&=65535),a.w=a.C>>12&3,c=N(a,d|c&65536),a.w=a.C>>14&3):c=6!=d||(a.C>>2&12288)===(a.C&12288)?a.f[d]:a.da[a.C>>12&3];return c}function bc(a,b,c,d){a.G&57344||(a.ya=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=$b(a,b,e,4),c&65536||(e&=65535),a.w=a.C>>12&3,e=Zb(a,e|c&65536,4),a.w=a.C>>14&3,lb(a,e,d)):6!=e||(a.C>>2&12288)===(a.C&12288)?a.f[e]=d:a.da[a.C>>12&3]=d} -function cc(a,b){b>>=6;var c=a.I=b&7;(b=a.H=(b&56)>>3)?(c=a.N(b,c,3),a=Va(a.u,c)):a=a.f[c]&255;return a}function R(a,b){var c;b>>=6;var d=a.I=b&7;(b=a.H=(b&56)>>3)?c=nb(a,a.N(b,d,2)):c=a.f[d];return c}function dc(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return $b(a,b,c,8)}function ec(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.N(b,c,3),a=Va(a.u,c)):a=a.f[c]&255;return a}function S(a,b){var c,d=a.b=b&7;(b=a.c=(b&56)>>3)?c=nb(a,a.N(b,d,2)):c=a.f[d];return c} -function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.vb=a.N(b,e,7),c=d.call(a,c,Va(a.u,e)),e&1&&a.a--,a=a.u,a.b[(e&a.u)>>>a.c].tb(e&a.h,c&255,e)):a.f[e]=a.f[e]&65280|d.call(a,c,a.f[e])}function U(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.N(b,e,6),lb(a,e,d.call(a,c,nb(a,e)))):a.f[e]=d.call(a,c,a.f[e])}function fc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(d=a.N(b,e,5),d&1&&a.a--,a=a.u,a.b[(d&a.u)>>>a.c].tb(d&a.h,c&255,d)):a.f[e]=c?d&1?c<<24>>24&65535:a.f[e]&-256|c&255:a.f[e]&-256;return c} -function gc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?lb(a,a.N(b,d,4),c):a.f[d]=c&65535;return c}function V(a,b,c){c&&(a.f[7]=a.f[7]+(b<<24>>23)&65535,a.a-=2);a.a-=3} -k.Xb=function(a){this.i.complete=!0;this.i.bc=!1;this.i.Wb=!1;this.W=this.a=a;do{if(this.j&&(this.j&112&&(this.j&32?K(this,168):this.j&64?K(this,4):this.j&16&&K(this,12),this.j&=-113),this.j&7))if(this.j&2){this.j&=-3;a=null;for(var b=this.Eb&224,c=this.o.length;0<=--c;){if(0b&&(b=this.o[c].Rb,a=this.o[c],this.o.splice(c,1))}b>(this.C&224)&&(this.j&4&&(this.f[7]= -this.f[7]+2&65535,this.j&=-5),a?K(this,a.Yb):K(this,160))}else this.j&1&&this.j++;this.G&57344||(this.ya=0,this.qb=this.f[7]);this.j=this.j&7|this.C&16;this.decode(Tb(this))}while(0>1|b<<16;Q(this,a);return a&65535}function mc(a,b){a=b&2048|b>>1|b<<8;Q(this,a<<8);return a&255}function nc(a,b){a=b&~a;O(this,a);return a}function oc(a,b){a=b&~a;O(this,a<<8);return a}function pc(a,b){a|=b;O(this,a);return a}function qc(a,b){a|=b;O(this,a<<8);return a}function rc(a,b){a=~b|65536;P(this,a);return a&65535} -function sc(a,b){a=~b|256;P(this,a<<8);return a&255}function tc(a,b){a=b-a;this.j&128||(this.m=this.h=a,this.g=b&(b^a));return a&65535}function uc(a,b){a=b-a;var c=a<<8;b<<=8;this.j&128||(this.m=this.h=c,this.g=b&(b^c));return a&255}function vc(a,b){a=b+a;this.j&128||(this.m=this.h=a,this.g=a&(b^a));return a&65535}function wc(a,b){a=b+a;var c=a<<8;this.j&128||(this.m=this.h=c,this.g=c&(b<<8^c));return a&255}function xc(a,b){a=-b;P(this,a,a&b&32768);return a&65535} -function yc(a,b){a=-b;P(this,a<<8,(a&b&128)<<8);return a&255}function zc(a,b){a=b<<1|this.l>>16&1;Q(this,a);return a&65535}function Ac(a,b){a=b<<1|this.l>>16&1;Q(this,a<<8);return a&255}function Bc(a,b){a=(this.l&65536|b)>>1|b<<16;Q(this,a);return a&65535}function Cc(a,b){a=((this.l&65536)>>8|b)>>1|b<<8;Q(this,a<<8);return a&255}function Dc(a,b){var c=b-a;Vb(this,c,a,b);return c&65535}function Ec(a,b){var c=b-a;Vb(this,c<<8,a<<8,b<<8);return c&255} -function Fc(a,b){this.j&128||(this.m=this.h=b&65280,this.g=this.l=0);return(b<<8|b>>8)&65535}function Gc(a,b){a^=b;O(this,a);return a&65535}function Hc(a){var b=S(this,a);a=a>>6&7;var c=this.f[a];c&32768&&(c|=4294901760);this.l=this.g=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.g=32768)}this.f[a]=c&65535;this.m=this.h=c;this.a-=(this.c?6:7)+b} -function Ic(a){var b=S(this,a);a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.l=this.g=0;b&=63;if(b&32){b=64-b;32>b-1;this.l=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.f[a|1]=d&65535;this.m=d>>16;this.h=d>>16|d;this.a-=(this.c?6:7)+b}function W(a){a&1&&(this.l=0);a&2&&(this.g=0);a&4&&(this.h=1);a&8&&(this.m=0);this.a-=5} -function Jc(a){var b=S(this,a);if(b){a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.l=this.g=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.f[a]=d&65535,this.f[a|1]=c-d*b&65535,this.h=d>>16|d,this.m=d>>16):(this.g=32768,this.h=d>>15|d,this.m=c>>16,-1===b&&65534===this.f[a]&&(this.f[a]=this.f[a|1]=1));this.a-=53}else this.h=this.m=0,this.g=32768,this.l=65536,this.a-=7}var Kc=[0,7,7,10,7,11,9,13];function Lc(a){var b=this.a;a=dc(this,a);this.f[7]=a&65535;this.a=b-Kc[this.c]} -var Mc=[0,14,14,17,14,18,16,20];function Nc(a){var b=this.a,c=dc(this,a);a=a>>6&7;Wb(this,this.f[a]);this.f[a]=this.f[7];this.f[7]=c&65535;this.a=b-Mc[this.c]}var Oc=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17],Pc=[7,13,13,17,14,18,17,21];function Qc(a){var b=S(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.f[a];c&32768&&(c|=-65536);b=~~(b*c);this.f[a]=b>>16&65535;this.f[a|1]=b&65535;this.j&128||(this.m=b>>16,this.h=this.m|b,this.g=0,this.l=-32768>b||32767>6;if(this.f[b]=this.f[b]-1&65535)this.f[7]=this.f[7]-((a&63)<<1)&65535,this.a+=1;this.a-=6}function Tc(a){U(this,a,0,Fc);this.a-=this.c?9:3+(7==this.b?2:0)}function Uc(a){U(this,a,R(this,a),Gc);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){K(this,8)}function Rb(a){Vc[a>>12].call(this,a)} -var Vc=[function(a){Wc[a>>8&15].call(this,a)},function(a){var b=R(this,a),c=this.a;O(this,gc(this,a,b));this.a=c-Oc[(this.H?8:0)+this.c]+(7!=this.b||this.c?0:2)},function(a){var b=R(this,a);a=S(this,a);Vb(this,b-a,a,b);this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){O(this,R(this,a)&S(this,a));this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),nc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b? -2:0)},function(a){U(this,a,R(this,a),pc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),hc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){Xc[a>>8&15].call(this,a)},function(a){Yc[a>>8&15].call(this,a)},function(a){var b=cc(this,a);O(this,fc(this,a,b,1)<<8);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){var b=cc(this,a)<<8;a=ec(this,a)<<8;Vb(this,b-a,a,b);this.a-=this.c?4+ -(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){O(this,(cc(this,a)&ec(this,a))<<8);this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){T(this,a,cc(this,a),oc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){T(this,a,cc(this,a),qc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),Dc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},Y],Wc=[function(a){Zc[a>> -4&15].call(this,a)},function(a){V(this,a,!0)},function(a){V(this,a,!!(this.h&65535))},function(a){V(this,a,this.h&65535?0:4)},function(a){V(this,a,!this.ua()==!(this.g&32768))},function(a){V(this,a,!this.ua()!=!(this.g&32768))},function(a){V(this,a,!!(this.h&65535)&&!this.ua()==!(this.g&32768))},function(a){V(this,a,(this.h&65535?0:4)||!this.ua()!=!(this.g&32768))},Nc,Nc,function(a){$c[a>>6&3].call(this,a)},function(a){ad[a>>6&3].call(this,a)},function(a){bd[a>>6&3].call(this,a)},function(a){cd[a>> -6&3].call(this,a)},Y,Y],$c=[function(a){P(this,gc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,rc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,vc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,tc);this.a-=this.c?9:3+(7==this.b?2:0)}],ad=[function(a){U(this,a,0,xc);this.a-=this.c?11:6},function(a){U(this,a,M(this)?1:0,hc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,M(this)?1:0,Dc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=S(this, -a);P(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],bd=[function(a){U(this,a,0,Bc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,zc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,lc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,jc);this.a-=this.c?9:3+(7==this.b?2:0)}],cd=[function(a){a=this.f[7]+((a&63)<<1)&65535;var b=N(this,a|65536);this.f[7]=this.f[5]&65535;this.f[6]=a+2&65535;this.f[5]=b;this.a-=8},function(a){a=ac(this,a,0);Wb(this,a);O(this,a);this.a-=11}, -function(a){var b=Yb(this),c=this.a;bc(this,a,0,b);O(this,b);this.a=c-Pc[this.c]},function(a){O(this,gc(this,a,this.ua?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Zc=[function(a){dd[a&15].call(this,a)},Y,Y,Y,Lc,Lc,Lc,Lc,function(a){if(a&8)K(this,8);else{var b=Yb(this);a&=7;this.f[7]=this.f[a]&65535;this.f[a]=b;this.a-=9}},function(a){a&8?(this.C&49152||(this.C=this.C&-2017|(a&7)<<5,this.j|=1),this.a-=5):K(this,8)},function(a){ed[a&15].call(this,a)},function(a){fd[a&15].call(this,a)},Tc,Tc,Tc,Tc], -dd=[function(){this.C&49152?(this.s|=128,K(this,4)):(this.W-=this.a,this.a=0);this.a-=7},function(){this.j|=4;this.f[7]=this.f[7]+-2&65535;this.a-=3},function(){Xb(this);this.j|=this.C&16;this.a-=13},function(){K(this,12);this.a-=5},function(){K(this,16);this.a-=25},function(){this.C&49152||(Sb(this),this.u.reset());this.a-=667},function(){Xb(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],ed=[Rc,function(){this.l=0;this.a-=5},function(){this.g=0;this.a-=5},W,function(){this.h=1;this.a-=5},W,W,W,function(){this.m= -0;this.a-=5},W,W,W,W,W,W,W],fd=[Rc,function(){this.l=65536;this.a-=5},function(){this.g=32768;this.a-=5},X,function(){this.h=0;this.a-=5},X,X,X,function(){this.m=32768;this.a-=5},X,X,X,X,X,X,X],Xc=[Qc,Qc,Jc,Jc,Hc,Hc,Ic,Ic,Uc,Uc,Y,Y,Y,Y,Sc,Sc],Yc=[function(a){V(this,a,!this.ua())},function(a){V(this,a,this.ua())},function(a){V(this,a,!M(this)&&!!(this.h&65535))},function(a){V(this,a,M(this)||(this.h&65535?0:4))},function(a){V(this,a,!(this.g&32768))},function(a){V(this,a,this.g&32768?2:0)},function(a){V(this, -a,!M(this))},function(a){V(this,a,M(this))},function(){K(this,24);this.a-=25},function(){K(this,28);this.a-=5},function(a){gd[a>>6&3].call(this,a)},function(a){hd[a>>6&3].call(this,a)},function(a){id[a>>6&3].call(this,a)},function(a){jd[a>>6&3].call(this,a)},Y,Y],gd=[function(a){P(this,fc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,sc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,wc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,uc);this.a-=this.c? -9:3+(7==this.b?2:0)}],hd=[function(a){T(this,a,0,yc);this.a-=this.c?11:6},function(a){T(this,a,M(this)?1:0,ic);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,M(this)?1:0,Ec);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=ec(this,a);P(this,a<<8);this.a-=this.c?4:3+(7==this.b?2:0)}],id=[function(a){T(this,a,0,Cc);this.a-=this.c?9+(this.vb&1):3+(7==this.b?2:0)},function(a){T(this,a,0,Ac);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,mc);this.a-=this.c?9+(this.vb&1):3+(7==this.b? -2:0)},function(a){T(this,a,0,kc);this.a-=this.c?9:3+(7==this.b?2:0)}],jd=[Y,function(a){a=ac(this,a,65536);Wb(this,a);O(this,a);this.a-=11},function(a){var b=Yb(this),c=this.a;bc(this,a,65536,b);O(this,b);this.a=c-Pc[this.c]},Y]; -function kd(a){v.call(this,"ROM",a,kd);this.b=null;this.m=a.addr;this.c=a.size;this.o=a.writable;this.g=a.alias;this.h=a.file;this.B=ba(this.h);if(this.h){a=this.h;var b=ca(this.B);"json"!=b&&"hex"!=b&&(a=ea()+"/api/v1/dump?file="+this.h+"&format=bytes&decimal=true");var c=this;p(a,null,!0,function(a,b,f){ld(c,a,b,f)})}}y(kd);kd.prototype.va=function(a,b,c,d){this.u=b;this.a=c;this.K=d;md(this)};kd.prototype.la=function(){this.l&&(this.K&&this.K.a(this.id,this.m,this.c,this.l),delete this.l);return!0}; -kd.prototype.ka=function(){return!0}; -function ld(a,b,c,d){if(d)a.O("Unable to load system ROM (error "+d+": "+b+")");else{Fa(a.wb,b,c);var e;if("["==c.charAt(0)||"{"==c.charAt(0))try{var f,g,h=eval("("+c+")");if(f=h.bytes)a.b=f;else if(f=h.words)for(a.b=Array(2*f.length),g=e=0;e>8&255;else if(f=h.data)for(a.b=Array(4*f.length),g=e=0;e>8&255,a.b[g++]=f[e]>>16&255,a.b[g++]=f[e]>>24&255;else a.b=h;a.l=h.symbols;if(!a.b.length){r("Empty ROM: "+b); -return}if(1==a.b.length){r(a.b[0]);return}}catch(l){a.O("ROM data error: "+l.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.b=Array(b.length),e=0;e>>d.c].Zb(e&d.h,a.b[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.g?b.push(a.g):null!=a.g&&a.g.length&&(b=a.g);for(c=0;c>>e.c;0>>=e.c;0=b)a.preventDefault&&a.preventDefault(),64");if(2==b.length){var c=ha(b[0]);if(c!=this.cb)return;b=ha(b[1]);if(this.o=Ga(b)){var d=this.o.exports;if(d){var e=d.connect;e&&e.call(this.o);if(this.w=d.receiveData){this.status(this.wb+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.la=function(a,b){if(!b)if(this.Ob(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; -k.ka=function(a){return a?this.save():!0};k.reset=function(){rd(this)};k.save=function(){var a=new L(this);a.set(0,[]);return a.data()};k.restore=function(){return rd(this)};function rd(a){a.I=0;a.b=0;a.c=128;a.h=[];return!0}k.Db=function(a){if("number"==typeof a)this.h.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.M||8,c=a-this.m%a,this.M&&(b=" ".slice(0,c)));this.G&&!this.m&&c&&(b=String.fromCharCode(this.G)+b);this.g.value+=b;this.g.scrollTop=this.g.scrollHeight;this.m+=c}else if(null!=this.l){if(10==a||1024<=this.l.length)this.U(this.l), -this.l="";10!=a&&(this.l+=String.fromCharCode(a))}this.c&=-129;I(this.a,100,4,52,this.H)}};var sd={},qd=(sd[65392]=[null,null,Z.prototype.nc,Z.prototype.Gc,"RCSR"],sd[65394]=[null,null,Z.prototype.mc,Z.prototype.Fc,"RBUF"],sd[65396]=[null,null,Z.prototype.qc,Z.prototype.Jc,"XCSR"],sd[65398]=[null,null,Z.prototype.pc,Z.prototype.Ic,"XBUF"],sd);u(function(){for(var a=D(document,"pdp11","serial"),b=0;b\nLicense: GPL version 3 or later ");this.U("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis ");for(b=0;bvd){if(xd(d,this.B)){this.l=new L(this,"1.30.1","failsafe");xd(this.l)&&(Cd(this,d),a=2,Dd(this.l));this.l.set("timestamp",ka());Ed(this.l);var e=this.b&&!this.m;if(1==a||la("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=Bd(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?xd(d,g):("error"== -f&&"no machine state"!=g?(this.O("Error: "+g),"unable to verify user"==g&&(pa("user",""),this.c=null)):this.U(f+": "+g),Dd(d),xd(d)?(c=Bd(d),e=!0):c=!1))}e&&Ad(this,c?d:null)}else 2==a&&d.clear()}else Ad(this);delete this.B;delete this.w}e=z(this.id);for(f=0;fa[1];a=a[2];this.Z=!0;this.i.P=!0;var d=this.A.power;d&&(d.textContent="Shutdown");this.a&&(Fd(this,this.a,b,c,a),this.a.Ua());this.I&&(Cd(this,b),b.clear());!c&&this.l&&(this.l.clear(),delete this.l);this.g=0}; -function Cd(a,b){if(la("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.c||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.1"};d.url=a.url;d.user=c;d.type="bug";d.data=b;p("http://www.pcjs.org/api/v1/report",d,!0)}} -function Gd(a,b,c){var d,e="none";if(a.g)return null;a.g--;var f=new L(a,"1.30.1"),g=new L(a,"1.30.1","validate"),h=ka();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ka&&(c&&Lb(a.a),d=a.a.ka(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.i.P=!1,!1===d&&(e=null)));for(var h=z(a.id),l=0;l>5&3;c.jb=a>>1&15;c.Fb=a&257?a&1?6:4:0;cb(c);a=c.G;a&1|256&&(b=this.a.Ba&16?1:2);this.c.Ma=this.c.Ma&-8|b};k.tc=function(){return db(this.a)};k.Nc=function(a){eb(this.a,a&-1809|db(this.a)&1808);this.a.j|=128}; +function fb(a){var b=a.g,c,d,e,f=b.W>>13&7;"undefined"===typeof b.S[f]&&(b.S[f]={cache:[],postProcess:a.zc,drive:f,blocksize:256,mapped:0,maxblock:b.Ia[f]*b.J[f],url:"rk"+f+".dsk"});b.D&=-129;switch(b.D>>1&7){case 0:b.cb=2496;b.R=0;b.D=128;b.W=0;break;case 1:if((b.W>>4&511)>=b.Ia[f]){b.R|=32832;b.D|=49152;break}if((b.W&15)>=b.J[f]){b.R|=32800;b.D|=49152;break}c=(b.W>>4&511)*b.J[f]+(b.W&15);d=(b.D&48)<<12|b.bb;e=65536-b.eb&65535;gb(a,b.S[f],c,d,e);return;case 2:if((b.W>>4&511)>=b.Ia[f])b.R|=32832, +b.D|=49152;else if((b.W&15)>=b.J[f])b.R|=32800,b.D|=49152;else{c=(b.W>>4&511)*b.J[f]+(b.W&15);d=(b.D&48)<<12|b.bb;e=65536-b.eb&65535;a.sb(b.S[f],c,d,e);return}}b.cb=f<<13|b.cb&8176|b.W%9&15;I(a.a,20,5,144,function(){b.D=b.D&65534|128;return!!(b.D&64)})}k.zc=function(a,b,c,d,e){var f=this.g;f.bb=d&65535;f.D=f.D&-49|d>>12&48;f.eb=65536-e&65535;switch(a){case 1:f.R|=33024;f.D|=49152;break;case 2:f.R|=33792,f.D|=49152}I(this.a,20,5,144,function(){f.D=f.D&65534|128;return!!(f.D&64)})}; +function hb(a){var b=a.h,c,d,e,f=b.v>>8&3;b.v&=-2;"undefined"===typeof b.S[f]&&(b.S[f]={cache:[],postProcess:a.Ac,drive:f,blocksize:128,mapped:1,maxblock:b.Ia[f]*b.J[f],url:"rl"+f+".dsk"});switch(b.v>>1&7){case 2:b.za&8&&(b.v&=63);b.za=b.gc[f]|b.Ea&64;break;case 3:1==(b.L&3)&&(b.Ea=b.L&4?b.Ea+(b.L&65408)&65408|b.L<<2&64:b.Ea-(b.L&65408)&65408|b.L<<2&64,b.L=b.Ea);break;case 4:b.za=b.Ea;break;case 5:if(b.L>>6>=b.Ia[f]){b.v|=37888;break}if((b.L&63)>=b.J[f]){b.v|=37888;break}c=(b.L>>6)*b.J[f]+(b.L&63); +d=(b.ta&63)<<16|b.Za;e=65536-b.za&65535;gb(a,b.S[f],c,d,e);return;case 6:if(b.L>>6>=b.Ia[f])b.v|=37888;else if((b.L&63)>=b.J[f])b.v|=37888;else{c=(b.L>>6)*b.J[f]+(b.L&63);d=(b.ta&63)<<16|b.Za;e=65536-b.za&65535;a.sb(b.S[f],c,d,e);return}}I(a.a,20,5,112,function(){b.v|=129;return!!(b.v&64)})} +k.Ac=function(a,b,c,d,e){var f=this.h;f.Za=d&65535;f.v=f.v&-49|d>>12&48;f.ta=d>>16&63;f.L=~~(c/f.J[b.la])<<6|c%f.J[b.la];f.Ea=f.L;f.za=65536-e&65535;switch(a){case 1:f.v|=33792;break;case 2:f.v|=40960}I(this.a,20,5,112,function(){f.v|=129;return!!(f.v&64)})};function ib(a){a=a.l;a.F=2176;a.aa=0;a.U=[4544,4544,4544,4544,4544,4544,4544,4544];a.Pa=[0,0,0,0,0,0,0,0];a.La=a.Qa=a.Oa=a.Da=a.Jb=0} +function jb(a,b){var c=a.l,d,e,f;c.F&=-16513;c.aa&=-2049;c.U[b]&=-1153;I(a.a,-1,0,172);"undefined"===typeof c.S[b]&&(c.S[b]={cache:[],postProcess:a.Bc,drive:b,blocksize:256,mapped:0,maxblock:c.xb[0]*c.Ha[0]*c.J[0],url:"rp"+b+".dsk"});switch(c.F&63){case 5:c.ub[b]=c.oa[b];c.F|=32896;c.U[b]|=32896;c.La|=1<=c.xb[0]||c.ba[b]>>8>=c.Ha[0]||(c.ba[b]&255)>=c.J[0]){c.Pa[b]|=1024;c.F|=49152;break}d=(c.oa[b]*c.Ha[0]+(c.ba[b]>>8))*c.J[0]+ +(c.ba[b]&255);e=(c.Da&63)<<16|c.Oa;f=65536-c.Qa&65535;gb(a,c.S[b],d,e,f);return;case 57:if(c.oa[b]>=c.xb[0]||c.ba[b]>>8>=c.Ha[0]||(c.ba[b]&255)>=c.J[0])c.Pa[b]|=1024,c.F|=49152;else{d=(c.oa[b]*c.Ha[0]+(c.ba[b]>>8))*c.J[0]+(c.ba[b]&255);e=(c.Da&63)<<16|c.Oa;f=65536-c.Qa&65535;a.sb(c.S[b],d,e,f);return}}I(a.a,3,5,172,function(){c.F=c.F&65534|128;c.U[b]|=128;return!!(c.F&64)})} +k.Bc=function(a,b,c,d,e){var f=this.l;f.Qa=65536-e&65535;f.Oa=d&65535;f.F=f.F&-769|d>>8&768;f.Da=d>>16&63;e=~~(c/f.J[0]);d=~~(e/f.Ha[0]);f.ba[b.la]=e%f.Ha[0]<<8|c%f.J[0];f.ub[b.la]=f.oa[b.la]=d;f.La|=1<=b.nc-1&&(f.U[b.la]|=1024);switch(a){case 1:f.aa|=512;f.F|=49152;break;case 2:f.aa|=2048,f.F|=49152}I(this.a,20,5,172,function(){f.U[b.la]|=128;f.F=f.F&65534|128;return!!(f.F&64)})}; +function kb(a,b,c,d,e,f){var g=~~((f+c.ua-1)/c.ua),h=new XMLHttpRequest;2048>g&&d+2048this.a.Sa(a.mc?lb(this.a,c):c,a.cache[b][e])){a.rb(2,a,b,c,d);return}c+=2;--d}b++}a.rb(0,a,b,c,d)}; +function gb(a,b,c,d,e){for(var f,g;0g){b.rb(2,b,c,d,e);return}b.cache[c][f]=g;d+=2;--e}c++}b.rb(0,b,c,d,e)}k.reset=function(){this.c.Ma=this.c.Ma&-120|20;this.b.ya=0;this.g.D=128;this.h.v=128;ib(this)}; +k.hc=function(a,b,c){var d,e,f=this.a;switch(a&-64){case 4194240:switch(a&-2){case 4194300:0>b?d=f.Ca&65280:(a&1&&(b<<=8),f.Ca=b|255,d=0);break;case 4194298:if(0>b)d=f.Ib;else{a&1&&(b<<=8);if(d=b&65024){e=d>>9;do d+=34;while(e>>=1)}f.Ib=d;f.j|=2}break;case 4194294:if(70!==f.Ja)return K(f,4);0>b?d=f.s:d=f.s=0;break;case 4194292:if(70!==f.Ja)return K(f,4);d=1;break;case 4194290:if(70!==f.Ja)return K(f,4);d=0;break;case 4194288:if(70!==f.Ja)return K(f,4);d=61183;break;case 4194296:0<=b&&!(a&1)&&(b&= +255);case 4194286:case 4194284:case 4194282:case 4194280:case 4194278:case 4194276:case 4194274:case 4194272:if(70!==f.Ja)return K(f,4);e=a-4194272>>1;0>b?d=f.Ab[e]:(d=J(this,f.Ab[e],a,b,c),0<=d&&(f.Ab[e]=d));break;case 4194254:return a&1?f.C>>14&1?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[3]=b),d=f.da[3]):f.C>>14&0?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[1]=b),d=f.da[1]),d;case 4194252:case 4194250:case 4194248:return e=a&7,f.C&2048?(0<=b&&(f.f[e]=b),d=f.f[e]):(0<=b&&(f.Ka[e]=b),d=f.Ka[e]),d;case 4194246:return a& +1?(0<=b&&(f.f[7]=b),d=f.f[7]):f.C>>14&0?(0<=b&&(f.f[6]=b),d=f.f[6]):(0<=b&&(f.da[0]=b),d=f.da[0]),d;case 4194244:case 4194242:case 4194240:return e=a&7,f.C&2048?(0<=b&&(f.Ka[e]=b),d=f.Ka[e]):(0<=b&&(f.f[e]=b),d=f.f[e]),d;default:return f.s|=16,K(f,4)}break;case 4194176:e=a>>1&31;d=J(this,f.Z[3][e],a,b,c);0<=d&&(f.Z[3][e]=d,f.Z[3][e&15]&=65295);break;case 4194112:switch(a&-2){case 4194174:d=J(this,f.tb,a,b,c);0<=d&&(f.tb=d);break;case 4194172:d=f.Aa;d&65280&&(d=(d<<8|d>>8)&65535);break;case 4194168:0> +b?d=this.c.Kc&65535:(d=J(this,this.c.data,a,b,c),0<=d&&(this.c.data=d));break;default:return f.s|=16,K(f,4)}break;case 4194048:e=this.g;switch(a&-2){case 4194048:d=J(this,e.cb,a,b,c);0<=d&&(e.cb=d);break;case 4194050:d=J(this,e.R,a,b,c);0<=d&&(e.R=d);break;case 4194052:d=J(this,e.D,a,b,c);0<=b&&0<=d&&(e.D=d&-36993|e.D&36992,e.D&1&&fb(this));break;case 4194054:d=J(this,e.eb,a,b,c);0<=d&&(e.eb=d);break;case 4194056:d=J(this,e.bb,a,b,c);0<=d&&(e.bb=d);break;case 4194058:d=J(this,e.W,a,b,c);0<=d&&(e.W= +d);break;case 4194060:break;case 4194062:d=J(this,e.Zb,a,b,c);0<=d&&(e.Zb=d);break;default:return f.s|=16,K(f,4)}break;case 4193728:var g=this.l;e=g.aa&7;switch(a&-2){case 4193728:d=J(this,g.F,a,b,c);0<=b&&0<=d&&(g.Da=g.Da&60|d>>8&3,g.F=d&17279|g.F&34944|2048,d&1&&g.F&128?jb(this,e):192==(d&192)&&I(f,0,5,172));break;case 4193730:d=J(this,g.Qa,a,b,c);0<=d&&(g.Qa=d);break;case 4193732:d=J(this,g.Oa,a,b,c);0<=d&&(g.Oa=d&65534);break;case 4193734:d=J(this,g.ba[e],a,b,c);0<=d&&(g.ba[e]=d&7967);break;case 4193736:d= +J(this,g.aa,a,b,c);0<=d&&(g.aa=d&63|g.aa&65472,d&128&&ib(this));break;case 4193738:d=g.U[e];break;case 4193740:d=g.Pa[e];break;case 4193742:d=J(this,g.La,a,b,c);0<=d&&(g.La=d&255);break;case 4193744:d=g.Gc[e];break;case 4193746:d=J(this,g.$b,a,b,c);0<=d&&(g.$b=d);break;case 4193748:d=J(this,g.ac[e],a,b,c);0<=d&&(g.ac[e]=d&1023);break;case 4193750:d=8210;break;case 4193752:d=g.Hc[e];break;case 4193754:d=J(this,g.bc[e],a,b,c);0<=d&&(g.bc[e]=d);break;case 4193756:d=J(this,g.oa[e],a,b,c);0<=d&&(g.oa[e]= +d&511);break;case 4193758:g.ub[e]=g.oa[e];d=g.ub[e];break;case 4193760:d=g.Ec[e];break;case 4193762:d=g.Fc[e];break;case 4193764:d=g.Cc[e];break;case 4193766:d=g.Dc[e];break;case 4193768:d=J(this,g.Da,a,b,c);0<=d&&(g.Da=d&63,g.F=g.F&-769|(d&3)<<8);break;case 4193770:d=J(this,g.Jb,a,b,c);0<=d&&(g.Jb=d);break;default:return f.s|=16,K(f,4)}break;case 4192512:e=this.h;switch(a&-2){case 4192512:d=J(this,e.v,a,b,c);0<=b&&0<=d&&(e.ta=e.ta&60|d>>4&3,e.v=e.v&-1023|d&1022,e.v&128||hb(this));break;case 4192514:d= +J(this,e.Za,a,b,c);0<=d&&(e.Za=d&65534);break;case 4192516:d=J(this,e.L,a,b,c);0<=d&&(e.L=d);break;case 4192518:d=J(this,e.za,a,b,c);0<=d&&(e.za=d);break;case 4192520:d=J(this,e.ta,a,b,c);0<=d&&(e.ta=d&63,e.v=e.v&-49|(e.ta&3)<<4);break;default:return f.s|=16,K(f,4)}break;case 4191552:switch(a&-2){case 4191566:0>b?d=f.Ba:(d=J(this,f.Ba,a,b,c),0<=d&&(70!==f.Ja&&(d&=-49),f.Ba=d,f.qb[0]=d&4?15:7,f.qb[1]=d&2?15:7,f.qb[3]=d&1?15:7,f.Fb&&(e=2,f.Ba&16&&(e=1),this.c.Ma=this.c.Ma&-8|e)));break;default:return f.s|= +16,K(f,4)}break;case 4191424:e=a>>1&31;d=J(this,f.Z[0][e],a,b,c);0<=d&&(f.Z[0][e]=d,f.Z[0][e&15]&=65295);break;case 4191360:e=a>>1&31;d=J(this,f.Z[1][e],a,b,c);0<=d&&(f.Z[1][e]=d,f.Z[1][e&15]&=65295);break;case 4190400:case 4190336:if(70!==f.Ja)return K(f,4);e=a>>2&31;d=f.fb[e];a&2&&(d>>=16);d&=65535;0<=b&&(d=J(this,d,a,b,c),0<=d&&(f.fb[e]=a&2?d<<16|f.fb[e]&65535:f.fb[e]&4294901760|d&65534));break;case 4188672:case 4188736:case 4188800:case 4188864:case 4188928:case 4188992:case 4189056:case 4189120:if(0> +b)d=Za[a>>1&255];else return f.s|=16,K(f,4);break;default:return f.s|=16,K(f,4)}c&&0<=d&&(a&1?d>>=8:d&=255);"undefined"===typeof d&&console.log("panic(76)");return d};var mb={},bb=(mb[65382]=[null,null,H.prototype.rc,H.prototype.Lc,"LKS"],mb[65402]=[null,null,H.prototype.sc,H.prototype.Mc,"MMR0"],mb[65534]=[null,null,H.prototype.tc,H.prototype.Nc,"PSW"],mb);u(function(){for(var a=D(document,"pdp11","device"),b=0;b>1),this.a=new Int32Array(this.b,0,c>>2),tb(this,pb?ub:vb);else{this.a=Array(c>>2);for(a=0;a>2),b=0;b>8,c)},N:function(a){return this.a[a>>2]>>>((a&3)<<3)&255},fa:function(a){var b=a>>2;a=(a&3)<<3;var c=this.a[b]>>a;return 24>a?c&65535:c&255|(this.a[b+1]&255)<<8},ja:function(a,b){var c=a>>2;a=(a&3)<<3;this.a[c]=this.a[c]&~(255<>2;a=(a&3)<<3;24>a?this.a[c]=this.a[c]&~(65535<>8);this.va=!0},H:function(a,b){return this.I(a,b)},Y:function(a,b){return this.ca(a, +b)},ha:function(a,b,c){this.A||this.fc(a,b,c)},qa:function(a,b,c){this.A||this.ra(a,b,c)},G:function(a){return this.c[a]},M:function(a){return this.c[a]},V:function(a){return this.g.getUint16(a,!0)},ea:function(a){return this.l[a>>1]},ga:function(a,b){this.c[a]=b;this.va=!0},ia:function(a,b){this.c[a]=b;this.va=!0},pa:function(a,b){this.g.setUint16(a,b,!0);this.va=!0},Fa:function(a,b){this.l[a>>1]=b;this.va=!0}}; +function Ma(a,b,c){a.K=b;a.h=a.u=0;c&&((a.h=c.h)&&xb(a,yb,!1),(a.u=c.u)&&zb(a,yb,!1))}function zb(a,b,c){c&&a.u||(a.wb=!a.A&&b[1]||a.B,a.Qc=!a.A&&b[3]||a.w);if(c||void 0===c)a.fc=b[1]||a.B,a.ra=b[3]||a.w}function xb(a,b,c){c&&a.h||(a.Gb=b[0]||a.m,a.wc=b[2]||a.o);if(c||void 0===c)a.I=b[0]||a.m,a.ca=b[2]||a.o}function tb(a,b){b||(b=Ab);xb(a,b,void 0);zb(a,b,void 0)}var Ab=[],wb=[G.prototype.N,G.prototype.ja,G.prototype.fa,G.prototype.Ga],yb=[G.prototype.H,G.prototype.ha,G.prototype.Y,G.prototype.qa]; +if(Ia)var vb=[G.prototype.G,G.prototype.ga,G.prototype.V,G.prototype.pa],ub=[G.prototype.M,G.prototype.ia,G.prototype.ea,G.prototype.Fa];function Bb(a,b){v.call(this,"CPU",a,Bb);var c=a.multiplier||1;this.mb=a.cycles||b;this.ia=c;this.Db=Math.round(this.mb/1E4)/100;this.pa=this.Db*this.ia;this.i.$=!1;this.i.cc=!1;this.i.Ya=a.autoStart;this.i.Lb=!1;this.i.ob=!1;this.gb=this.qa=0;this.lb=a.csStart;this.Ga=a.csInterval;this.Ta=a.csStop;this.M=[];this.Vb=this.Ic.bind(this);F(this)}y(Bb); +var Cb=["power","reset"];k=Bb.prototype;k.xa=function(a,b,c,d){this.B=a;this.u=b;this.K=d;for(b=0;b>=3;d=""+e}else d=n(c,d);else d="--------".substr(0,d||4);a.A[b].textContent!=d&&(a.A[b].textContent=d)}} +k.X=function(a,b,c){var d=this;a=!1;switch(b){case "power":case "reset":this.A[b]=c;a=!0;break;case "run":this.A[b]=c;c.onclick=function(){var a;if(a=d.B)if(a=d.B,a.i.P)a=!0;else{var b=null,c,h=z(a.id);for(c=0;ca.fa/a.pa&&(b=1),a.ia=b,b=a.Db*a.ia,a.pa!=b)){a.pa=b;b=a.pa.toFixed(2)+"Mhz";var c=a.A.setSpeed;c&&(c.textContent=b);a.T("target speed: "+b)}Kb(a,a.ca);a.ca=0;a.Y=ja();a.ga=0;Lb(a)}function $a(a,b){var c=a.M.length;a.M.push([-1,b]);return c}function ab(a,b,c){0<=b&&ba.M[b][0]&&(c*=a.mb*a.ia/1E3,a.M[b][0]=c)} +k.Ic=function(){if(this.i.$){this.Eb>=this.mb&&Lb(this,!0);this.Va=0;this.kb=ja();if(this.ga){var a=this.kb-this.ga;a>this.Tb&&(this.Y+=a,this.Y>this.kb&&(this.Y=this.kb))}try{do{for(var b,c=this.i.ob?1:this.nb,d=this.M.length-1;0<=d;d--){var e=this.M[d];0>e[0]||c>e[0]&&(c=e[0])}b=c;try{this.dc(b)}catch(m){if("number"!=typeof m)throw m;}for(var f=this.ha-this.a,a=f,g=this.M.length-1;0<=g;g--){var h=this.M[g];0>h[0]||(h[0]-=a,0>=h[0]&&(h[0]=-1,h[1]()))}this.Va+=f;this.ca+=f;Kb(this,0,!0);a=f;if(this.i.ob){var l= +!1;this.gb=this.gb+this.Nb()|0;this.qa-=a;0>=this.qa&&(this.qa+=this.Ga,l=!0);0<=this.Ta&&this.Ta<=Mb(this)&&(this.Ga=this.Ta=-1,Fb(this),L(this),l=!0);l&&this.T(Mb(this)+" cycles: checksum="+n(this.gb))}this.Ua-=f;if(0>=this.Ua){this.Ua+=this.nb;15<=++this.Ub&&(this.B&&this.B.Ra(),this.Ub=0);break}}while(this.i.$)}catch(m){L(this);Gb(this);this.B&&this.B.stop(ja(),Mb(this));b=m.stack||m.message;this.i.error=!0;this.O(b);return}if(this.i.$){b=setTimeout;c=this.Vb;this.ga=ja();d=this.Tb;this.Va&&(d= +Math.round(d*this.Va/this.nb));d-=this.ga-this.kb;if(e=this.ga-this.Y)this.fa=Math.round(this.ca/(10*e))/100,864E5<=e&&(this.ja=0,Jb(this));if(0>d||this.fad&&(this.Y-=d),d=0;this.Eb+=this.Va;this.ga+=d;b(c,d)}}};function Hb(a){var b;a.i.error?(a.T(a.toString()+" error"),b=!0):b=!1;if(!b)if(a.i.$)a.T(a.toString()+" busy");else{Jb(a);a.i.$=!0;a.i.cc=!0;a.Fa&&a.Fa.start();if(b=a.A.run)b.textContent="Halt";a.B&&a.B.start(a.Y,Mb(a));Gb(a,!0);setTimeout(a.Vb,0)}}k.dc=function(){return 0}; +function L(a){if(a.i.$){a.ha-=a.a;a.a=0;Kb(a,a.ca);a.ca=0;a.i.$=!1;a.Fa&&a.Fa.stop();var b=a.A.run;b&&(b.textContent="Run");a.B&&a.B.stop(ja(),Mb(a));Gb(a)}a.i.complete=void 0}function Gb(a,b){a.B&&a.B.Ra(b)} +function Nb(a){this.Jc=a.resetAddr||0;Bb.call(this,a,6666667);this.Ob=0;this.decode=Ob.bind(this);this.l=65536;this.g=32768;this.h=65535;this.m=32768;this.C=15;this.f=[0,0,0,0,0,0,0,this.Jc];this.Ka=[0,0,0,0,0,0];this.da=[0,0,0,0];this.jb=this.w=0;this.Z=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];this.fb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.Ab=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];this.c=this.b=this.Bb=this.H=this.I=this.j=0;this.Ja=70;this.ra=-1;Pb(this);this.i.complete=this.i.ic=!1}y(Nb,Bb);k=Nb.prototype;k.reset=function(){this.i.$&&L(this);Pb(this);Eb(this);this.i.error=!1;this.parent.reset.call(this)}; +function Pb(a){a.Ca=255;a.s=0;a.Ib=0;a.G=0;a.Aa=0;a.tb=0;a.Ba=0;a.Fb=0;a.ib=0;a.oc=[4,2,0,1];a.qb=262143;a.Rb=253952;a.Sb=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[65535,65535,65535,65535,65535,65535,65535,65535],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.pc=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]];a.o=[];a.j|=2;cb(a)} +function cb(a){a.Fb?(a.ea=65536,a.N=a.lc,a.V=a.Yb,a.Wb=a.Rc):(a.ea=0,a.N=a.kc,a.V=a.Na,a.Wb=a.Sa)}k.Nb=function(){return 0};k.save=function(){var a=new M(this);a.set(0,[]);a.set(1,[this.ja,this.ia]);a.set(2,Wa(this.u));return a.data()}; +k.restore=function(a){var b=a[1];this.ja=b[1];Jb(this,b[3]);a:{b=this.u;a=a[2];var c;for(c=0;cb){a.o[f].ka-=b;break}b-=a.o[f].ka}a.o.splice(f+1,0,{ka:b,Xb:c<<5&224,ec:d,yb:e})}a.j|=2}function db(a){return a.C=a.C&63728|a.wa()|(a.h&65535?0:4)|(a.g&32768?2:0)|N(a)} +function eb(a,b){a.m=b<<12;a.h=~b&4;a.g=b<<14;a.l=b<<16;if((b^a.C)&2048)for(var c=a.Ka.length;0<=--c;){var d=a.f[c];a.f[c]=a.Ka[c];a.Ka[c]=d}a.w=b>>14&3;c=a.C>>14&3;a.w!=c&&(a.da[c]=a.f[6],a.f[6]=a.da[a.w]);a.j|=2;a.C=b}function O(a,b){a.j&128||(a.m=a.h=b,a.g=0)}function P(a,b,c){a.j&128||(a.m=a.h=a.l=b,a.g=c||0)}function Rb(a,b,c,d){a.j&128||(a.m=a.h=a.l=b,a.g=(c^b)&(d^b))}function Q(a,b){a.j&128||(a.m=a.h=a.l=b,a.g=a.m^a.l>>1)}function Sb(a,b,c,d){a.j&128||(a.m=a.h=a.l=b,a.g=(c^d)&(d^b))} +function K(a,b){var c=!1;0>a.ra?a.ra=db(a):a.w||(b=4,c=!0);a.G&57344||(a.Aa=63222,a.tb=b);a.w=0;var d=a.V(b|a.ea),e=a.V(b+2&65535|a.ea);eb(a,e&-12289|a.ra>>2&12288);c&&(a.s|=4,a.f[6]=4);Tb(a,a.ra);Tb(a,a.f[7]);a.f[7]=d&65535;a.j&=-113;a.ra=-1;throw b;}function Ub(a){var b=Vb(a),c=Vb(a)&-1793;a.C&49152&&(c=c&-225|a.C&63712);a.f[7]=b&65535;eb(a,c);a.j&=-17} +function lb(a,b){var c=b>>13&31;31>c?a.Ba&32&&(b=a.fb[c]+(b&8190)&4194302,3932160<=b&&4186112>b&&console.log("panic(898)")):b|=4186112;return b} +function Wb(a,b,c){var d,e,f,g=0;d=b>>13;a.Ba&a.oc[a.w]||(d&=7);e=a.Sb[a.w][d];f=(a.pc[a.w][d]<<6)+(b&8191)&a.qb;ff&&(3932160<=f&&(f=lb(a,f&262143)),f>=a.Rb&&4186112>f&&(a.s|=32,K(a,4))));switch(e&7){case 1:g=4096;case 2:e|=128;c&4&&(g=8192);break;case 4:g=4096;case 5:c&4&&(g=4096);case 6:e|=c&4?192:128;break;default:g=32768}32512!==(e&32520)&&(e&8?e&32512&&(b&8128)<(e>>2&8128)&&(g|=16384):(b&8128)>(e>>2&8128)&&(g|=16384)); +a.Sb[a.w][d]=e;if(4194170!==f||a.w)a.ib=a.w,a.jb=d;g&&(g&57344&&(0<=a.ra&&(g|=128),a.G&57344||(a.G=a.G|g|a.ib<<5|a.jb<<1),K(a,168)),a.G&61440||!(4191360>f||4194239c&&d&1&&(f=1));a.a-=3;break;case 3:f=2;e=a.f[c];7!==c&&(e|=g);e=a.V(e);e|=g;a.a-=7;break;case 4:f=-2;6>c&&d&1&&(f=-1);e=a.f[c]+f&65535;7!==c&&(e|=g);a.a-=4;break;case 5:f=-2;e=a.f[c]-2&65535;7!==c&&(e|=g);e=a.V(e)|g;a.a-=8;break; +case 6:return e=Qb(a),e=e+a.f[c]&65535|g,a.a-=6,e;case 7:return e=Qb(a),e=e+a.f[c]&65535,e=a.V(e|a.ea)|g,a.a-=10,e}a.f[c]=a.f[c]+f&65535;!g||a.G&57344||(a.Aa=a.Aa<<8|f<<3&248|c);6==c&&!a.w&&d&4&&0>=f&&(a.f[6]<=a.Ca||65534<=a.f[6])&&(a.f[6]<=a.Ca-32?(a.s|=4,a.f[6]=4,K(a,4)):(a.s|=8,a.j|=64));return e}k.kc=function(a,b,c){return Xb(this,a,b,c)};k.lc=function(a,b,c){return Wb(this,Xb(this,a,b,c),c)};k.Na=function(a){a&1&&(this.s|=64,K(this,4));var b=this.u;return b.b[(a&b.u)>>>b.c].wc(a&b.h,a)}; +k.Yb=function(a){return this.Na(Wb(this,a,2))};k.Sa=function(a,b){a&1&&(this.s|=64,K(this,4));var c=this.u;c.b[(a&c.u)>>>c.c].Qc(a&c.h,b&65535,a)};k.Rc=function(a,b){this.Sa(Wb(this,a|65536,4),b)};function Yb(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?(d=Xb(a,b,d,2),c&65536||61440!==(a.C&61440)&&(d&=65535),a.w=a.C>>12&3,c=a.V(d|c&a.ea),a.w=a.C>>14&3):c=6!=d||(a.C>>2&12288)===(a.C&12288)?a.f[d]:a.da[a.C>>12&3];return c} +function Zb(a,b,c,d){a.G&57344||(a.Aa=22);var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=Xb(a,b,e,4),c&65536||(e&=65535),a.w=a.C>>12&3,e=Wb(a,e|c&65536,4),a.w=a.C>>14&3,a.Sa(e,d)):6!=e||(a.C>>2&12288)===(a.C&12288)?a.f[e]=d:a.da[a.C>>12&3]=d}function $b(a,b){b>>=6;var c=a.I=b&7;(b=a.H=(b&56)>>3)?(c=a.N(b,c,3),a=Va(a.u,c)):a=a.f[c]&255;return a}function R(a,b){var c;b>>=6;var d=a.I=b&7;(b=a.H=(b&56)>>3)?c=a.Na(a.N(b,d,2)):c=a.f[d];return c}function ac(a,b){var c=a.b=b&7;b=a.c=(b&56)>>3;return Xb(a,b,c,8)} +function bc(a,b){var c=a.b=b&7;(b=a.c=(b&56)>>3)?(c=a.N(b,c,3),a=Va(a.u,c)):a=a.f[c]&255;return a}function S(a,b){var c,d=a.b=b&7;(b=a.c=(b&56)>>3)?c=a.Na(a.N(b,d,2)):c=a.f[d];return c}function T(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.Bb=a.N(b,e,7),c=d.call(a,c,Va(a.u,e)),e&1&&a.a--,a=a.u,a.b[(e&a.u)>>>a.c].wb(e&a.h,c&255,e)):a.f[e]=a.f[e]&65280|d.call(a,c,a.f[e])}function U(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(e=a.N(b,e,6),a.Sa(e,d.call(a,c,a.Na(e)))):a.f[e]=d.call(a,c,a.f[e])} +function cc(a,b,c,d){var e=a.b=b&7;(b=a.c=(b&56)>>3)?(d=a.N(b,e,5),d&1&&a.a--,a=a.u,a.b[(d&a.u)>>>a.c].wb(d&a.h,c&255,d)):a.f[e]=c?d&1?c<<24>>24&65535:a.f[e]&-256|c&255:a.f[e]&-256;return c}function dc(a,b,c){var d=a.b=b&7;(b=a.c=(b&56)>>3)?a.Sa(a.N(b,d,4),c):a.f[d]=c&65535;return c}function V(a,b,c){c&&(a.f[7]=a.f[7]+(b<<24>>23)&65535,a.a-=2);a.a-=3} +k.dc=function(a){this.i.complete=!0;this.i.ic=!1;this.i.cc=!1;this.ha=this.a=a;do{if(this.j&&(this.j&112&&(this.j&32?K(this,168):this.j&64?K(this,4):this.j&16&&K(this,12),this.j&=-113),this.j&7))if(this.j&2){this.j&=-3;a=null;for(var b=this.Ib&224,c=this.o.length;0<=--c;){if(0b&&(b=this.o[c].Xb,a=this.o[c],this.o.splice(c,1))}b>(this.C&224)&&(this.j&4&&(this.f[7]= +this.f[7]+2&65535,this.j&=-5),a?K(this,a.ec):K(this,160))}else this.j&1&&this.j++;this.G&57344||(this.Aa=0,this.tb=this.f[7]);this.j=this.j&7|this.C&16;this.decode(Qb(this))}while(0>1|b<<16;Q(this,a);return a&65535}function jc(a,b){a=b&2048|b>>1|b<<8;Q(this,a<<8);return a&255}function kc(a,b){a=b&~a;O(this,a);return a}function lc(a,b){a=b&~a;O(this,a<<8);return a}function mc(a,b){a|=b;O(this,a);return a}function nc(a,b){a|=b;O(this,a<<8);return a}function oc(a,b){a=~b|65536;P(this,a);return a&65535} +function pc(a,b){a=~b|256;P(this,a<<8);return a&255}function qc(a,b){a=b-a;this.j&128||(this.m=this.h=a,this.g=b&(b^a));return a&65535}function rc(a,b){a=b-a;var c=a<<8;b<<=8;this.j&128||(this.m=this.h=c,this.g=b&(b^c));return a&255}function sc(a,b){a=b+a;this.j&128||(this.m=this.h=a,this.g=a&(b^a));return a&65535}function tc(a,b){a=b+a;var c=a<<8;this.j&128||(this.m=this.h=c,this.g=c&(b<<8^c));return a&255}function uc(a,b){a=-b;P(this,a,a&b&32768);return a&65535} +function vc(a,b){a=-b;P(this,a<<8,(a&b&128)<<8);return a&255}function wc(a,b){a=b<<1|this.l>>16&1;Q(this,a);return a&65535}function xc(a,b){a=b<<1|this.l>>16&1;Q(this,a<<8);return a&255}function yc(a,b){a=(this.l&65536|b)>>1|b<<16;Q(this,a);return a&65535}function zc(a,b){a=((this.l&65536)>>8|b)>>1|b<<8;Q(this,a<<8);return a&255}function Ac(a,b){var c=b-a;Sb(this,c,a,b);return c&65535}function Bc(a,b){var c=b-a;Sb(this,c<<8,a<<8,b<<8);return c&255} +function Cc(a,b){this.j&128||(this.m=this.h=b&65280,this.g=this.l=0);return(b<<8|b>>8)&65535}function Dc(a,b){a^=b;O(this,a);return a&65535}function Ec(a){var b=S(this,a);a=a>>6&7;var c=this.f[a];c&32768&&(c|=4294901760);this.l=this.g=0;b&=63;if(b&32)b=64-b,16>=b;else if(b)if(16>15&65535;d&&65535!==d&&(this.g=32768)}this.f[a]=c&65535;this.m=this.h=c;this.a-=(this.c?6:7)+b} +function Fc(a){var b=S(this,a);a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.l=this.g=0;b&=63;if(b&32){b=64-b;32>b-1;this.l=d<<16;d>>=1;c&2147483648&&(d|=4294967295<<32-b)}else b?(d=c<>15,d<<=1,32>=32-b)&&4294967295!==(c|4294967295<>16&65535;this.f[a|1]=d&65535;this.m=d>>16;this.h=d>>16|d;this.a-=(this.c?6:7)+b}function W(a){a&1&&(this.l=0);a&2&&(this.g=0);a&4&&(this.h=1);a&8&&(this.m=0);this.a-=5} +function Gc(a){var b=S(this,a);if(b){a=a>>6&7;var c=this.f[a]<<16|this.f[a|1];this.l=this.g=0;b&32768&&(b|=-65536);var d=~~(c/b);-32768<=d&&32767>=d?(this.f[a]=d&65535,this.f[a|1]=c-d*b&65535,this.h=d>>16|d,this.m=d>>16):(this.g=32768,this.h=d>>15|d,this.m=c>>16,-1===b&&65534===this.f[a]&&(this.f[a]=this.f[a|1]=1));this.a-=53}else this.h=this.m=0,this.g=32768,this.l=65536,this.a-=7}var Hc=[0,7,7,10,7,11,9,13];function Ic(a){var b=this.a;a=ac(this,a);this.f[7]=a&65535;this.a=b-Hc[this.c]} +var Jc=[0,14,14,17,14,18,16,20];function Kc(a){var b=this.a,c=ac(this,a);a=a>>6&7;Tb(this,this.f[a]);this.f[a]=this.f[7];this.f[7]=c&65535;this.a=b-Jc[this.c]}var Lc=[3,9,9,13,10,14,12,16,4,9,9,13,10,14,13,17],Mc=[7,13,13,17,14,18,17,21];function Nc(a){var b=S(this,a);a=a>>6&7;b&32768&&(b|=-65536);var c=this.f[a];c&32768&&(c|=-65536);b=~~(b*c);this.f[a]=b>>16&65535;this.f[a|1]=b&65535;this.j&128||(this.m=b>>16,this.h=this.m|b,this.g=0,this.l=-32768>b||32767>6;if(this.f[b]=this.f[b]-1&65535)this.f[7]=this.f[7]-((a&63)<<1)&65535,this.a+=1;this.a-=6}function Qc(a){U(this,a,0,Cc);this.a-=this.c?9:3+(7==this.b?2:0)}function Rc(a){U(this,a,R(this,a),Dc);this.a-=this.c?9:3+(7==this.b?2:0)}function Y(){K(this,8)}function Ob(a){Sc[a>>12].call(this,a)} +var Sc=[function(a){Tc[a>>8&15].call(this,a)},function(a){var b=R(this,a),c=this.a;O(this,dc(this,a,b));this.a=c-Lc[(this.H?8:0)+this.c]+(7!=this.b||this.c?0:2)},function(a){var b=R(this,a);a=S(this,a);Sb(this,b-a,a,b);this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){O(this,R(this,a)&S(this,a));this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),kc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b? +2:0)},function(a){U(this,a,R(this,a),mc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),ec);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){Uc[a>>8&15].call(this,a)},function(a){Vc[a>>8&15].call(this,a)},function(a){var b=$b(this,a);O(this,cc(this,a,b,1)<<8);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){var b=$b(this,a)<<8;a=bc(this,a)<<8;Sb(this,b-a,a,b);this.a-=this.c?4+ +(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){O(this,($b(this,a)&bc(this,a))<<8);this.a-=this.c?4+(this.I&&6<=this.b?1:0):(this.H?4:3)+(7==this.b?2:0)},function(a){T(this,a,$b(this,a),lc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){T(this,a,$b(this,a),nc);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},function(a){U(this,a,R(this,a),Ac);this.a-=this.c?9+(this.I&&6<=this.b?1:0):(this.H?5:3)+(7==this.b?2:0)},Y],Tc=[function(a){Wc[a>> +4&15].call(this,a)},function(a){V(this,a,!0)},function(a){V(this,a,!!(this.h&65535))},function(a){V(this,a,this.h&65535?0:4)},function(a){V(this,a,!this.wa()==!(this.g&32768))},function(a){V(this,a,!this.wa()!=!(this.g&32768))},function(a){V(this,a,!!(this.h&65535)&&!this.wa()==!(this.g&32768))},function(a){V(this,a,(this.h&65535?0:4)||!this.wa()!=!(this.g&32768))},Kc,Kc,function(a){Xc[a>>6&3].call(this,a)},function(a){Yc[a>>6&3].call(this,a)},function(a){Zc[a>>6&3].call(this,a)},function(a){$c[a>> +6&3].call(this,a)},Y,Y],Xc=[function(a){P(this,dc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,oc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,sc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,1,qc);this.a-=this.c?9:3+(7==this.b?2:0)}],Yc=[function(a){U(this,a,0,uc);this.a-=this.c?11:6},function(a){U(this,a,N(this)?1:0,ec);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,N(this)?1:0,Ac);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=S(this, +a);P(this,a);this.a-=this.c?4:3+(7==this.b?2:0)}],Zc=[function(a){U(this,a,0,yc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,wc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,ic);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){U(this,a,0,gc);this.a-=this.c?9:3+(7==this.b?2:0)}],$c=[function(a){a=this.f[7]+((a&63)<<1)&65535;var b=this.Yb(a|65536);this.f[7]=this.f[5]&65535;this.f[6]=a+2&65535;this.f[5]=b;this.a-=8},function(a){a=Yb(this,a,0);Tb(this,a);O(this,a);this.a-= +11},function(a){var b=Vb(this),c=this.a;Zb(this,a,0,b);O(this,b);this.a=c-Mc[this.c]},function(a){O(this,dc(this,a,this.wa?65535:0));this.a-=this.c?9:3+(7==this.b?2:0)}],Wc=[function(a){ad[a&15].call(this,a)},Y,Y,Y,Ic,Ic,Ic,Ic,function(a){if(a&8)K(this,8);else{var b=Vb(this);a&=7;this.f[7]=this.f[a]&65535;this.f[a]=b;this.a-=9}},function(a){a&8?(this.C&49152||(this.C=this.C&-2017|(a&7)<<5,this.j|=1),this.a-=5):K(this,8)},function(a){bd[a&15].call(this,a)},function(a){cd[a&15].call(this,a)},Qc,Qc, +Qc,Qc],ad=[function(){this.C&49152?(this.s|=128,K(this,4)):L(this);this.a-=7},function(){this.j|=4;this.f[7]=this.f[7]+-2&65535;this.a-=3},function(){Ub(this);this.j|=this.C&16;this.a-=13},function(){K(this,12);this.a-=5},function(){K(this,16);this.a-=25},function(){this.C&49152||(Pb(this),this.u.reset());this.a-=667},function(){Ub(this);this.a-=13},Y,Y,Y,Y,Y,Y,Y,Y,Y],bd=[Oc,function(){this.l=0;this.a-=5},function(){this.g=0;this.a-=5},W,function(){this.h=1;this.a-=5},W,W,W,function(){this.m=0;this.a-= +5},W,W,W,W,W,W,W],cd=[Oc,function(){this.l=65536;this.a-=5},function(){this.g=32768;this.a-=5},X,function(){this.h=0;this.a-=5},X,X,X,function(){this.m=32768;this.a-=5},X,X,X,X,X,X,X],Uc=[Nc,Nc,Gc,Gc,Ec,Ec,Fc,Fc,Rc,Rc,Y,Y,Y,Y,Pc,Pc],Vc=[function(a){V(this,a,!this.wa())},function(a){V(this,a,this.wa())},function(a){V(this,a,!N(this)&&!!(this.h&65535))},function(a){V(this,a,N(this)||(this.h&65535?0:4))},function(a){V(this,a,!(this.g&32768))},function(a){V(this,a,this.g&32768?2:0)},function(a){V(this, +a,!N(this))},function(a){V(this,a,N(this))},function(){K(this,24);this.a-=25},function(){K(this,28);this.a-=5},function(a){dd[a>>6&3].call(this,a)},function(a){ed[a>>6&3].call(this,a)},function(a){fd[a>>6&3].call(this,a)},function(a){gd[a>>6&3].call(this,a)},Y,Y],dd=[function(a){P(this,cc(this,a,0));this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,pc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,tc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,1,rc);this.a-=this.c? +9:3+(7==this.b?2:0)}],ed=[function(a){T(this,a,0,vc);this.a-=this.c?11:6},function(a){T(this,a,N(this)?1:0,fc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,N(this)?1:0,Bc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){a=bc(this,a);P(this,a<<8);this.a-=this.c?4:3+(7==this.b?2:0)}],fd=[function(a){T(this,a,0,zc);this.a-=this.c?9+(this.Bb&1):3+(7==this.b?2:0)},function(a){T(this,a,0,xc);this.a-=this.c?9:3+(7==this.b?2:0)},function(a){T(this,a,0,jc);this.a-=this.c?9+(this.Bb&1):3+(7==this.b? +2:0)},function(a){T(this,a,0,hc);this.a-=this.c?9:3+(7==this.b?2:0)}],gd=[Y,function(a){a=Yb(this,a,65536);Tb(this,a);O(this,a);this.a-=11},function(a){var b=Vb(this),c=this.a;Zb(this,a,65536,b);O(this,b);this.a=c-Mc[this.c]},Y]; +function hd(a){v.call(this,"ROM",a,hd);this.b=null;this.m=a.addr;this.c=a.size;this.o=a.writable;this.g=a.alias;this.h=a.file;this.B=ba(this.h);if(this.h){a=this.h;var b=ca(this.B);"json"!=b&&"hex"!=b&&(a=ea()+"/api/v1/dump?file="+this.h+"&format=bytes&decimal=true");var c=this;p(a,null,!0,function(a,b,f){id(c,a,b,f)})}}y(hd);hd.prototype.xa=function(a,b,c,d){this.u=b;this.a=c;this.K=d;jd(this)};hd.prototype.na=function(){this.l&&(this.K&&this.K.a(this.id,this.m,this.c,this.l),delete this.l);return!0}; +hd.prototype.ma=function(){return!0}; +function id(a,b,c,d){if(d)a.O("Unable to load system ROM (error "+d+": "+b+")");else{Fa(a.Cb,b,c);var e;if("["==c.charAt(0)||"{"==c.charAt(0))try{var f,g,h=eval("("+c+")");if(f=h.bytes)a.b=f;else if(f=h.words)for(a.b=Array(2*f.length),g=e=0;e>8&255;else if(f=h.data)for(a.b=Array(4*f.length),g=e=0;e>8&255,a.b[g++]=f[e]>>16&255,a.b[g++]=f[e]>>24&255;else a.b=h;a.l=h.symbols;if(!a.b.length){r("Empty ROM: "+b); +return}if(1==a.b.length){r(a.b[0]);return}}catch(l){a.O("ROM data error: "+l.message);return}else for(b=c.replace(/\n/gm," ").replace(/ +$/,"").split(" "),a.b=Array(b.length),e=0;e>>d.c].fc(e&d.h,a.b[c]&255,e)}b=!0}else b=!1;if(b){b=[];"number"==typeof a.g?b.push(a.g):null!=a.g&&a.g.length&&(b=a.g);for(c=0;c>>e.c;0>>=e.c;0=b)a.preventDefault&&a.preventDefault(),64");if(2==b.length){var c=ha(b[0]);if(c!=this.hb)return;b=ha(b[1]);if(this.o=Ga(b)){var d=this.o.exports;if(d){var e=d.connect;e&&e.call(this.o);if(this.w=d.receiveData){this.status(this.Cb+"."+c+" connected to "+b);return}}}}this.status("Unable to establish connection: "+a)}}};k.na=function(a,b){if(!b)if(this.Qb(),!a||!this.restore)this.reset();else if(!this.restore(a))return!1;return!0}; +k.ma=function(a){return a?this.save():!0};k.reset=function(){od(this)};k.save=function(){var a=new M(this);a.set(0,[]);return a.data()};k.restore=function(){return od(this)};function od(a){a.I=0;a.b=0;a.c=128;a.h=[];return!0}k.Hb=function(a){if("number"==typeof a)this.h.push(a);else if("string"==typeof a)for(var b=0;b":String.fromCharCode(a);var c=b.length;32>a&&1==c&&(c=0);9==a&&(a=this.M||8,c=a-this.m%a,this.M&&(b=" ".slice(0,c)));this.G&&!this.m&&c&&(b=String.fromCharCode(this.G)+b);this.g.value+=b;this.g.scrollTop=this.g.scrollHeight;this.m+=c}else if(null!=this.l){if(10==a||1024<=this.l.length)this.T(this.l), +this.l="";10!=a&&(this.l+=String.fromCharCode(a))}this.c&=-129;I(this.a,100,4,52,this.H)}};var pd={},nd=(pd[65392]=[null,null,Z.prototype.vc,Z.prototype.Pc,"RCSR"],pd[65394]=[null,null,Z.prototype.uc,Z.prototype.Oc,"RBUF"],pd[65396]=[null,null,Z.prototype.yc,Z.prototype.Tc,"XCSR"],pd[65398]=[null,null,Z.prototype.xc,Z.prototype.Sc,"XBUF"],pd);u(function(){for(var a=D(document,"pdp11","serial"),b=0;b\nLicense: GPL version 3 or later ");this.T("Portions adapted from the PDP-11/70 Emulator v1.3 by Paul Nankervis ");for(b=0;bsd){if(ud(d,this.B)){this.l=new M(this,"1.30.1","failsafe");ud(this.l)&&(zd(this,d),a=2,Ad(this.l));this.l.set("timestamp",ka());Bd(this.l);var e=this.b&&!this.m;if(1==a||la("Click OK to restore the previous PDPjs machine state, or CANCEL to reset the machine.")){if(c=yd(d)){var f=d.get("code"),g=d.get("data");f&&("ok"==f?ud(d,g):("error"== +f&&"no machine state"!=g?(this.O("Error: "+g),"unable to verify user"==g&&(pa("user",""),this.c=null)):this.T(f+": "+g),Ad(d),ud(d)?(c=yd(d),e=!0):c=!1))}e&&xd(this,c?d:null)}else 2==a&&d.clear()}else xd(this);delete this.B;delete this.w}e=z(this.id);for(f=0;fa[1];a=a[2];this.Y=!0;this.i.P=!0;var d=this.A.power;d&&(d.textContent="Shutdown");this.a&&(Cd(this,this.a,b,c,a),this.a.Ya());this.I&&(zd(this,b),b.clear());!c&&this.l&&(this.l.clear(),delete this.l);this.g=0}; +function zd(a,b){if(la("There may be a problem with your PDPjs machine.\n\nTo help us diagnose it, click OK to send this PDPjs machine state to http://www.pcjs.org.")){var c=a.c||"";b=b.toString();var d={app:"PDPjs",ver:"1.30.1"};d.url=a.url;d.user=c;d.type="bug";d.data=b;p("http://www.pcjs.org/api/v1/report",d,!0)}} +function Dd(a,b,c){var d,e="none";if(a.g)return null;a.g--;var f=new M(a,"1.30.1"),g=new M(a,"1.30.1","validate"),h=ka();g.set("timestamp",h);f.set("timestamp",h);f.set("version","1.30.1");f.set("url",window?window.location.href:null);f.set("browser",window?window.navigator.userAgent:"");a.a&&a.a.ma&&(c&&L(a.a),d=a.a.ma(b,c),"object"===typeof d&&f.set(a.a.id,d),c&&(a.a.i.P=!1,!1===d&&(e=null)));for(var h=z(a.id),l=0;lf.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), -a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){f=null,a=q.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");p(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,q=/( [a-z]+=)(['"])(.*?)\2/g;m=q.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, -"");a=a.replace(d[0],g);Nd(a,b,c)}})}else c(a,null)} -function Od(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ga(a))}function f(a){e("Error: "+a);l&&(--Kd||wa(!0));l=!1}var g,h,l=!0;Kd++;Ea[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],w=document.createElement("style");w.type="text/css";w.styleSheet?w.styleSheet.cssText=m:w.appendChild(document.createTextNode(m));q.appendChild(w)}c|| -(c="/versions/pdp11/1.30.1/components.xsl");m=function(d,h){h?Ld(c,null,null,!1,e,function(d,l){l?(Fa(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--Kd||wa(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--Kd||wa(!0)):f("invalid machine element: "+ -a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Ld(b,a,d,!0,e,m):Md(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(E){f(E.message)}return l}window.embedPDP11=function(a,b,c,d){wa(!1);return Od(a,b,c,d)};window.enableEvents=wa;window.sendEvent=xa;})(); +k.X=function(a,b,c){var d=this;switch(b){case "power":return this.A[b]=c,c.onclick=function(){d.g||(d.i.P?Dd(d,!1,!0):wd(d,d.ab))},!0;case "reset":return this.A[b]=c,c.onclick=function(){if(d.i.P&&!d.g)if(d.b&&!d.o){var a=la("Click OK to save changes to this PDPjs machine.\n\nWARNING: If you CANCEL, all disk changes will be discarded.");Dd(d,a,!0);!a&&d.H?window&&window.location.reload():d.ab(sd)}else d.reset(),d.a&&d.a.Ya()},!0;case "save":if(da())c.parentNode.removeChild(c);else return this.A[b]= +c,c.onclick=function(){var a=td(d,!0);if(a){var b=!!(d.b&&!d.o||d.H),c=Dd(d,b);b?Ed(d,a,c):d.O("Resume disabled, machine state not saved")}},!0}return!1}; +function td(a,b){var c=a.c;c||((c=oa("user"),void 0!==c)?!c&&b&&(b=null,window&&(b=window.prompt("Saving machine states on the pcjs.org server is currently unsupported.\n\nIf you're running your own server, enter your user ID below.","")),c=b)&&((c=Fd(a,c))||a.O("The user ID is invalid.")):b&&a.O("Browser local storage is not available"));return c} +function Fd(a,b){a.c=null;b=p(ea()+"/api/v1/user?req=verify&user="+b);var c=b[1];if(!b[0]&&c)try{b=eval("("+c+")"),b.code&&"ok"==b.code&&(pa("user",b.data),a.c=b.data)}catch(d){r(d.message+" ("+c+")")}return a.c}function vd(a){var b=null;a.c&&(b=ea()+"/api/v1/user?req=load&user="+a.c+"&state="+Gd(a,"1.30.1"));return b} +function Ed(a,b,c){if(c){var d={req:"store"};d.user=b;d.state=Gd(a,"1.30.1");d.data=c;b=p(ea()+"/api/v1/user",d);d=b[0];if(b[1]){if(d){var e=d.indexOf("\n");0f.indexOf("/")&&"/"==window.location.pathname.slice(-1)&&(f=window.location.pathname+f),d?"}"==d.slice(-1)?(d=d.slice(0,-1),1]*\sid=)(['"]).*?\2/,"$1$2"+c+"$2"+(d?" parms='"+d+"'":"")+(f?' url="'+f+'"':"")));e||(a=a.replace(/().*?(<\/xsl:variable>)/,"$1PDPjs$2"), +a=a.replace(/().*?(<\/xsl:variable>)/,"$1pdp11$2"));f=null;if("<"==a.charAt(0))try{e||(a=a.replace(/\s*/g,"")),window.ActiveXObject||"ActiveXObject"in window?(f=new window.ActiveXObject("Microsoft.XMLDOM"),f.async=!1,f.loadXML(a)):f=(new window.DOMParser).parseFromString(a,"text/xml")}catch(q){f=null,a=q.message}else a="unrecognized XML: "+(255/g.exec(a)){var e=d[2];b("Loading "+e+"...");p(e,null,!0,function(f,g,h){if(h||!g)c(a,"unable to resolve XML reference: "+d[0]+" ("+h+")");else{if(f=d[3])if(h=g.match(new RegExp("<"+d[1]+"[^>]*>"))){for(var l=h[0],m,q=/( [a-z]+=)(['"])(.*?)\2/g;m=q.exec(f);)l=0>l.indexOf(m[1])?l.replace(">",m[0]+">"):l.replace(new RegExp(m[1]+"(['\"])(.*?)\\1"),m[0]);h[0]!=l&&(g=g.replace(h[0],l))}else{c(a,"missing <"+d[1]+"> in "+e);return}g=g.replace(/<\?xml[^>]*>[\r\n]*/, +"");a=a.replace(d[0],g);Kd(a,b,c)}})}else c(a,null)} +function Ld(a,b,c,d){function e(a){if(void 0===h){var b=g&&D(g,"machine-warning");h=b&&b[0]||g}h&&(h.innerHTML=ga(a))}function f(a){e("Error: "+a);l&&(--Hd||wa(!0));l=!1}var g,h,l=!0;Hd++;Ea[a]={};try{if(g=document.getElementById(a)){var m;if("object"==typeof resources&&(m=resources.css)){var q=document.head||document.getElementsByTagName("head")[0],w=document.createElement("style");w.type="text/css";w.styleSheet?w.styleSheet.cssText=m:w.appendChild(document.createTextNode(m));q.appendChild(w)}c|| +(c="/versions/pdp11/1.30.1/components.xsl");m=function(d,h){h?Id(c,null,null,!1,e,function(d,l){l?(Fa(a,c,d),e("Processing "+b+"..."),window.ActiveXObject||"ActiveXObject"in window?(l=h.transformNode(l))?(g.outerHTML=l,--Hd||wa(!0)):f("transformNodeToObject failed"):document.implementation&&document.implementation.createDocument?(d=new XSLTProcessor,d.importStylesheet(l),(l=d.transformToFragment(h,document))?g.parentNode?(g.parentNode.replaceChild(l,g),--Hd||wa(!0)):f("invalid machine element: "+ +a):f("transformToFragment failed")):f("unable to transform XML: unsupported browser")):f(d)}):f(d)};"<"!=b.charAt(0)?Id(b,a,d,!0,e,m):Jd(b,null,a,d,!1,e,m)}else f("missing machine element: "+a)}catch(E){f(E.message)}return l}window.embedPDP11=function(a,b,c,d){wa(!1);return Ld(a,b,c,d)};window.enableEvents=wa;window.sendEvent=xa;})();