Git Product home page Git Product logo

retro-b5500's Introduction

The Burroughs B5500 was an innovative computer system. Released first as the B5000 in 1962 and then, with minor improvements and a new disk subsystem, re-released as the B5500 in 1964, its design was a radical departure from other commercial systems of the day. Many of the concepts that it embodied were being worked on and implemented by others around the same time, but it is difficult to think of another system that pulled so many new concepts together and made them work so well in a commercially-successful product:

  • Stack- and descriptor-oriented instruction set
  • Variable-length memory segments
  • Hardware bounds checking
  • Unified integer/floating-point numeric format
  • Designed for and programmed exclusively in higher-level languages
  • Designed for and managed by a sophisticated operating system, the Master Control Program, or MCP
  • Multi-programming (multiple tasks sharing the same processor)
  • Multi-processing (multiple physical processors sharing common memory and I/O)
  • Automatic memory allocation and address relocation
  • Automatic memory segment overlay (what we now call virtual memory)
  • Use of labeled file media and automatic assignment of labeled file media to requesting programs (what we now call automatic volume recognition)

The B5500 was the foundation for the Burroughs B6x00/7x00/A Series systems, which are still produced and sold today as Unisys ClearPath MCP systems.

The main goal of this project is creation of a web browser-based emulator for the B5500. A second goal is reconstruction of source and object code for the system.

A complete software release (Mark XIII, 1971) is presently available from the hosting site below under liberal terms of a Unisys educational/hobbyist license.

The contents of this project are licensed under the MIT License.

Related Sites URL
Getting Started http://www.phkimpel.us/B5500/webSite/HelpMenu.html
Project Blog http://retro-b5500.blogspot.com/
Web/email Forum http://groups.google.com/group/retro-b5500
Emulator hosting site http://www.phkimpel.us/B5500/
Burroughs Mark XIII Software Release http://www.phkimpel.us/B5500/webSite/SoftwareRequest.html
B5500 at retroComputingTasmania http://www.retrocomputingtasmania.com/home/projects/burroughs-b5500
Documents at bitsavers.org http://bitsavers.org/pdf/burroughs/B5000_5500_5700/
Release Downloads https://drive.google.com/folderview?id=0BxqKm7v4xBswM29qUkxPTkVfYzg&usp=sharing

This project was originally hosted on Google Code at https://code.google.com/p/retro-b5500 and moved to GitHub in June 2015.

retro-b5500's People

Contributors

pkimpel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

retro-b5500's Issues

Buttons on B5500 Console are not correct

The color and positioning of some buttons on the B5500 Operator Console were 
not correct. In particular, Card Load Select and Memory Check were exchanged, 
the Power On button should be green, and the Halt and Memory Check buttons 
should be red. Card Load Select and Halt should light when activated.

These corrections were taken from a picture of a real B5500 Console, courtesy 
of Sid McHarg. We had to guess about the Memory Check button color, since it 
was missing from the console in the picture.

To be released in emulator version 0.13.

Original issue reported on code.google.com by [email protected] on 26 Sep 2013 at 12:31

FLAG BIT fault while compiling FORTRAN compiler with Algol

Reported by Fausto Saporito on 2013-06-28:

Hello,

an interesting update.

I fixed most of the syntax errors in the fortran source (i'm still modifying 
the sequence numbers).
From 170 errors I got 7 errors... then I fixed other two... and trying to 
compile I got this :

5:ALGOL/FORTRAN= 1 BOJ 2026
 CRA IN CARD A 1:ALGOL/FORTRAN= 1
 PBD0143 OUT LINE:ALGOL/FORTRAN= 1
-FLAG BIT ALGOL/FORTRAN= 1, S= 3, A= 209
 CRA REL CARD A 1:ALGOL/FORTRAN= 1
 0:PRNPBT/DISK= 2 BOJ 2115
 ALGOL/FORTRAN= 1 DS-ED 2116

I reduced the stack to 1000 (from 3000), and I don't know if this could be a 
problem.

The compiling aborted before reaching the end of it.. the listing is stopping 
in this way:

                 DDT111:  EMITDDT(1,1,1) ;                                                      04088000    0130
                          END;                                                                  04089000    0131 
                          E0(LQV) ; % @14: LOGICAL EQUIVALENCE.                                 04090000    0131 
                          ; % @15: FLOAT.                                                       04091000    0133 
                          GO DDT111 ; % @16: ISIGN, SIGN.                                       04092000    0133 
                          BEGIN E0(RDV); GO AINT END ; % @17: MOD.                              04093000    0133 
                          E0(LOR) ; % @20: LOGICAL OR.                                          04094000    0135
                          BEGIN E0(XCH); GO AIMAG END ; % @21: REAL.                            04095000    0136        
########  -FLAG BIT ALGOL  /FORTRAN= 1, S =   3, A = 209  
######################################################

Attached there's the new job.

Regards,

Fausto

Original issue reported on code.google.com by [email protected] on 6 Jul 2013 at 11:46

Problems with large disk subsystems in Firefox

Reported by Paul Cumberworth on 2015-06-05:

I still haven’t got my head around large Disk subsystems – I used to get a dialog box in Firefox asking me for permission to exceed 50Mb I think it was, but that doesn’t seem to happen anymore. For now I’m just trying to keep my file systems small.

I have also noticed this problem, especially when multiple disk subsystems have been created. Firefox docs indicate there is no size limit for IndexedDB databases, but this appears to be a limit imposed on off-line applications (i.e., those in the App Cache).

SPO erratic behavior

The behavior of webUI/B5500SPOUnit occasionally becomes erratic:

  * Appears to allow input while output is being typed.
  * Gets into a state where input cannot be terminated. Clicking End of Message or pressing Enter appears to act like the Error button. Input Request goes out, but immediately comes back on again.

These may be separate, independent problems or symptoms of a common one. The 
sequence of events to cause this is unknown. It's possibly and 
emulator/processor problem, but is more likely in the SPO logic.

Original issue reported on code.google.com by [email protected] on 24 Mar 2013 at 10:01

Implement virtual tape library for emulated tape volumes.

From Tim Sirianni:
2)  Also, has anyone suggested to do the same thing you're talking about with 
disks [support multiple indexedDB databases for separate disk subsystems and 
and system configurations] except for tapes? Set up a sort of a virtual tape 
library. The tape drives could be directly unloaded into the IDB-backed 
library, indexed by the VSN. As soon as you hit UNLOAD, the data on the tape 
just goes to the library. Later we could type a VSN into a UI that pops up when 
a tape drive's LOAD is pressed and have that tape load. Tapes could be exported 
from and imported to the library in the same way the tape drives currently 
handle it. Also fun would be if tape drives could be restored to a saved state 
(including online/offline, write-protect, and "which VSN/scratch tape is 
loaded?" status) at power on time.

Original issue reported on code.google.com by [email protected] on 20 Jul 2014 at 2:45

Coldstart Loader does not set date properly

The B5500ColdLoader.html utility does not properly initialize the date in the 
DIRECTORYTOP segment. After initialization it comes out as 1/0/0.

There may be a problem initializing time as well, but not sure if the 
ColdLoader is the source of that problem.

Original issue reported on code.google.com by [email protected] on 24 Mar 2013 at 10:07

Unit busy vs. disk check complete interrupt

Unit busy for DKA and DKB when doing a read-check operation is currently reset 
when the disk-finished interrupt occurs, not at I/O completion. This may not be 
correct. We had to change the way the printer worked so that busy was reset at 
I/O complete, and the disk may require the same change to CentralControl and 
IOUnit.

Original issue reported on code.google.com by [email protected] on 14 Jun 2013 at 3:29

DCA does not accept left and right angle brackets

What steps will reproduce the problem?
1. CE on SPO to start cande
2. login and make a algol
3. try to type '700  WRITE (LINE,<"X = ",F8.5>,X);~'
4. type LIST 700

What is the expected output? What do you see instead?
a line '700  WRITE (LINE,<"X = ",F8.5>,X);' is expected
a line '700  WRITE (LINE"X = ",F8.5,X);' is seen

What version of the product are you using? On what operating system?
0.15

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 20 Nov 2013 at 8:38

XREF/JONES stops processing, idle in mix

Attempted to run the XREF/JONES program from the SPO, equating the CARD file to 
SYMBOL/XREF. Program appeared to start fine, then got open messages for a 
printer-backup file. After several seconds, I/O activity in the emulator 
ceased, and XREF/JONES appeared to be idle. Program could be DS-ed 
successfully, and system seemed to operate normally otherwise.

Line number at which the program was DS-ed is immediately after a write to the 
printer file. Suspect the problem is something in I/O, or possibly a dropped 
interrupt.

Original issue reported on code.google.com by [email protected] on 16 Apr 2013 at 4:17

P2 causes MCP invalid address

Attempting to run with Processor 2 enabled typically results in a system-level 
invalid address "punt". The second processor's Normal light blips briefly, but 
then the system halts.

Original issue reported on code.google.com by [email protected] on 12 Aug 2013 at 4:42

Corruption of Intrinsics file under TSMCP

Observed corruption of the intrinsics file on a running TSS system. Showed up as various weird I/O problems in Algol programs. Reloading the Intrinsics file from the system tape resolved the issue.

Submitted by Terry Heidelberg, 2015-05-04.

Documentation conflict for Linked List Look-up syllable

The B5500 Reference Manual states that the field used for comparing link words 
is [9:24] (Algol bit numbering), but the B5500 Processor Technical Manual 
states it is [18:15] (Algol numbering -- it actually states the field is 
30=>16, which is hardware numbering).

Assume for now that the Reference Manual is correct, as [9:24] appears to be 
used in several places in the MCP by LLL operations. This means that the 
comparison field would be the mantissa portion of the word, which makes sense.

Original issue reported on code.google.com by [email protected] on 3 Mar 2013 at 3:18

Invalid address and flag-bit errors

We have reports of invalid address and flag-bit errors, especially when the 
system is under heavy load. We also see occasional disk errors, which look like 
they may be caused by bad memory addresses.

From Paul Cumberworth email of 2013-11-18:

<quote>
I had also experienced the DKA failure a few weeks ago and took a copy for 
interest sake.  I put it down to a corrupted directory at the time.
Inline image 1

I've have also notice the increased frequency of Invalid Addresses is TSSMCP, 
and there also appears some strange behavior in DCMCP under load. Occasionally 
on large compile for instance, I will get a flag bit error, on rerun it will 
run satisfactorily to completion.  A good example is two concurrent compiles of 
the cobol compiler (seems to be load sensitive), reasonably often one of the 
compiles will get a flag bit error.  I did get the odd flag bit error 
previously but hadn't really worried about it too much, but the frequency is 
definitely higher.
</quote>


Original issue reported on code.google.com by [email protected] on 18 Nov 2013 at 2:05

Invalid L-register value in Algol compiler, line 02182760

Code to format the code segment address at 02182760 uses L.[45:2] instead of 
L.[46:2]. Original bug in patch #114 for Mark XVI.0.122 Algol compiler.

*** DO NOT FIX ***

This is an original error in the bitsavers.org listing that should be preserved.

Reported by Terry Heidelberg on 2012-12-15.

Original issue reported on code.google.com by [email protected] on 15 Dec 2012 at 9:26

Mark XIII Algol compiler loops while compiling Mark XVI FORTRAN source.

            -------- Original Message --------
            Subject: Re: Emulator version 0.07
            From: Fausto Saporito <[email protected]>
            To: Paul Kimpel <[email protected]>
            Cc: Nigel Williams <[email protected]>
            Date: 6/24/2013 2:09 PM
>             Hello,
>
>             ok... after several tries, I got the FATAL:
>
>             5:ALGOL/FORTRAN= 1 BOJ 0911
>              CRA IN CARD A 1:ALGOL/FORTRAN= 1
>              PBD0121 OUT LINE:ALGOL/FORTRAN= 1
>             1 D
>
>              SINVALD LINK
>             trying to abort the job, after the usual CRA stop.
>
>             Maybe this is related to the Algol stack size ... I'll try with 
larger value.
>
>             BFN,
>             Fausto
>
>             2013/6/24 Fausto Saporito <[email protected]>
>
>                 Hi Paul,
>
>                 it's the FORTRAN compiler deck, I sent you.
>                 By the way, the emulator is working, here is the output of 
SPO:
>
>                  5:ALGOL/FORTRAN= 1 BOJ 0607
>                  CRA IN CARD A 1:ALGOL/FORTRAN= 1
>                  PBD0120 OUT LINE:ALGOL/FORTRAN= 1
>                 1 TS
>                 INV KBD 1 TS
>                 MX
>                  5:ALGOL/FORTRAN= 1
>
>                 1 TL
>                  TIME LIMITS FOR ALGOL/FORTRAN= 1 ARE: PRT=NO LIMIT; IOT=NO 
LIMIT.
>                 1 TI
>                  TIME FOR ALGOL/FORTRAN= 1 IS: CP= 14:20, IO= 6:36 IN 17:11
>                 OL CRA
>                  CRA IN USE BY ALGOL/FORTRAN= 1:0000000 CARD A 001 00000 01
>
>                 At the moment, the CRA is stil freezed...
>
>                 Regards,
>                 Fausto
>
>                 2013/6/24 Paul Kimpel <[email protected]>
>
>                     That certainly sounds like some sort of emulator bug. If 
you'll send me that big deck, I'll try to reproduce it.
>
>                     -------- Original Message --------
>                     Subject: Re: Emulator version 0.07
>                     From: Fausto Saporito <[email protected]>
>                     To: Paul Kimpel <[email protected]>
>                     CC: Nigel Williams <[email protected]>
>                     Date: Mon, 24 Jun 2013, 11:03 am
>>                     Hello,
>>
>>                     with the big FORTRAN deck, I'm experiencing very often 
the CRA block... it seems to happen without any valid reason.
>>                     The emulator seems to halt, and on the console (in this 
case) I have just TIMR flashing.
>>
>>                     PA Slack freezed at 81% and PA rate freezed at 4.4%
>>
>>                     I'll try to wait...
>>
>>                     BFN,
>>                     Fausto

Original issue reported on code.google.com by [email protected] on 6 Jul 2013 at 1:13

Corrupted Library/Maintenance tape hangs MT drive and IOU under Mark XV

Sid McHarg's recovered Mark XV System tape is incomplete. Valid data stops in the middle of FILE022 (FORTRAN/DISK). On Mark XV, the MCP reports an error on the SPO when this spot is reached, but both the tape drive and the IO Unit are hung. The unit cannot be cleared, and Library/Maintenance cannot be DS-ed.

Implement multiple datacom stations

From Nigel Williams:
Implement support for at least two datacom stations in the web-based emulator, 
so that the multi-user aspect of the B5500 TSMCP can be demonstrated.

Original issue reported on code.google.com by [email protected] on 20 Jul 2014 at 2:15

Time of day does not print correctly under MCP control

Time of day (e.g., in response to a WT SPO command) frequently does not format 
properly, e.g., TIME IS 2L3M.

As observed thus far, the letters in the time are always in the range J-R, 
which may indicate that the internal time counter from which the time is being 
formatted (XCLOCK) has gone negative, as character mode in the processor 
converts negative binary numbers to characters with a "J-sign" in the low-order 
position. Thus, since the hours and minutes fields of the time are formatted 
separately, 2L3M could indicate a time of -2334.

Original issue reported on code.google.com by [email protected] on 24 Mar 2013 at 10:13

Incorrect BIS syllable mnemonic for ESPOL, ESPOLXEM

The Mark XVI ESPOL source contains an original typo at line 02558000. The 
mnemonic for Bit Set, syllable code 52 (64 octal), should be "BIS", not "BIT". 
The latter is the mnemonic for Bit Test.

** DO NOT CORRECT **

This is an original error in the source that was correctly transcribed from the 
listings on bitsavers.org, and should be preserved.

Original issue reported on code.google.com by [email protected] on 8 Feb 2013 at 3:33

INVALID ADDRESS FOR MCP error on TSMCP

Two different cases of apparent damage to the system disk, causing the system to be non-bootable under Chrome and Opera (on H/L, they said INVALID ADDRESS FOR MCP).

Submitted by Terry Heidelberg, 2015-05-04.

CMN - detection of presence bit accessing the destination address

At the end of the CMN (Enter Character Mode In Line) instruction, it executes a 
portion of the RDA (Recall Destination Address) instruction starting at J=2 to 
load the character-mode destination address. If the TOS word is a descriptor, 
the instruction checks for presence, and if not sets the presence-bit 
interrupt. Neither the Reference Manual or Training Manual state whether this 
interrupt is inhibited in Control State. We are going to assume it is.

Original issue reported on code.google.com by [email protected] on 11 Jul 2012 at 3:00

Separate Console from main browser window

It would be desirable to separate the B5500 Console and its controls from the 
main browser window. This would allow the Console to be positioned on the 
screen or brought to the top much more easily without the main browser window 
overlaying several peripheral device windows.

Original issue reported on code.google.com by [email protected] on 25 Sep 2014 at 1:13

COBOL MASTER/TEST error in section P016

The COBOL MASTER/TEST reports an error result in section P016 (AMOUNT COMPARISON 7.4.26) when using the standard run deck from the Mark XIII SYSNOTES listing:

ANSN(14) = 0000014000      ≠   RSTN(14) = 000009900+

The offending statement in the program is:

015130     IF F1D20 IS POSITIVE THEN MOVE 99 TO RSTN (14)
015140         ELSE MOVE 14 TO RSTN (14).

Requires further investigation -- may be an emulator bug.

Reported by Terry Heidelberg, 2015-05-10.

Emulator becomes very slow after long idle

If the emulator running the MCP idles for a very long time (hours) with nothing 
to do, it responds very slowly. It takes several seconds for the Input Request 
light to come on after clicking it, and the reply message comes out at perhaps 
0.5 cps.

This behavior has been observed in Firefox 19. Could it be evidence of some 
sort of memory leak or long chain of closures that induces a lot of garbage 
collection overhead?

Original issue reported on code.google.com by [email protected] on 24 Mar 2013 at 10:26

statement at line 4385 of B5500Processor.js is probably wrong

it looks like there is one parameter too many:
 case 0x25: // XX45: ISO=Variable Field Isolate op
this.adjustAFull();
t2 = variant >>> 3; // number of whole chars
if (t2) {
t1 = this.G*6 + this.H; // starting source bit position
t2 = t2*6 - (variant & 7) - this.H; // number of bits
if (t1+t2 <= 48) {
this.A = this.cc.fieldIsolate(this.A, t1, t2);
} else { // handle wrap-around in the source value
this.A = this.cc.fieldInsert(
//                           vvvvvvvvvvvvvvvvvvvvv
this.cc.fieldIsolate(this.A, 0, t2-48+t1, t1+t2-48), 48-t2, 48-t1,
//                           ^^^^^^^^^^^^^^^^^^^^^
this.cc.fieldIsolate(this.A, t1, 48-t1));
}
// approximate the shift cycle counts
this.cycleCount += (variant >>> 3) + (variant & 7) + this.G + this.H;
this.G = (this.G + variant >>> 3) & 7;
this.H = 0;
}
break;


Original issue reported on code.google.com by [email protected] on 20 Nov 2013 at 9:03

Printer does not recover after paper is exhausted

Reported by Paul Cumberworth on 2015-06-05:

Printer reload doesn’t work if the paper is logically exhausted – you can skip to heading more than 3 times, but it will refuse to reload the paper.

CANDE LIST FILES command errors in object-file types

apparent errors in object-file types, produced by CANDE command "LIST FILES", which invokes LFILES/CANDE; this appears to be an off-by-one error; I've spent some time looking through code in CANDE and LFILES, but haven't located a problem there yet (but i did discover some features not in the CANDE documentation, however)

Submitted by Terry Heidelberg, 2015-05-04.

typo in B5500DatacomUnit.js

What steps will reproduce the problem?
1.list line 433
2.
3.

What is the expected output? What do you see instead?
this.abnormal=true
this.abnomal=true


What version of the product are you using? On what operating system?
0.19 
Linux Slackware 12.1



Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 11 Mar 2014 at 10:55

Emulator crashes Google Crome

The emulator formerly ran in Google Chrome just fine, but starting sometime in 
the Fall of 2013, now has problems. It starts out okay, but after a few 
minutes, all of the emulator windows crash with a Chrome "Aw Snap!" error. The 
only recovery is to close all of those windows and open a new one for the 
console.

It appears the crash is due either to a memory leak in the emulator or 
inadequate garbage collection by Chrome. The Chrome Memory Profiler shows 
steadily increasing memory utilization until 300-400MB, at which point Chrome 
aborts the scripts.

Original issue reported on code.google.com by [email protected] on 23 Mar 2014 at 7:50

Cannot purge tape under Mark XV MCP

Reported by Paul Cumberworth on 2015-05-19:

I’ve got XV DCMCP running up and compilers updated, but I did find an issue in the emulator with Tape handling though – out the box it will not allow PG of a tape, returning a “CANNOT PURGE” error.

In PURGETAPE of XV MCP they’ve changed the handling slightly with the INTERROGATE IO call (line 08030000).

In XIII it is just:

IF WAITIO(@500000000,@120,U) ! 0 THEN%
  BEGIN; STREAM(BUFF); DS ~ 11 LIT "WRITE LOCK~";% 
…

In XV (and XVI) it is:

IF (R~WAITIO(@500000000,@177,U))!0 THEN
  IF R!@120 THEN %ERROR OTHER THAN WRITE LOCK
    BEGIN;STREAM(U~TINU[U],BUFF);
        BEGIN DS~14 LIT "#CANNOT PURGE ";
           …
        END;                                     
        LABELTABLE[U]~@214;      
        GO TO EXIT;
      END ELSE %NO WRITE RING
          BEGIN; STREAM(BUFF); DS ~ 11 LIT "WRITE LOCK~";%
..
         END

As I see it, the reason for the CANNOT PURGE is the BOT status condition present in the result descriptor. If I comment out the call to buildErrorMask in writeInterrogate of B5500MageTapeDrive.js, everything behaves as expected – I checked MCP XIII as well and it was quiet happy with this.

     } else {
        if (this.writeRing) {
//            this.buildErrorMask(0); 
                                } else {
            this.errorMask |= 0x50;     // RD bits 26 & 28 => no write ring, don't return Mod III bits
        }
        finish(this.errorMask, 0);

Looking at the MCP sourcce, I can only find Interrogate called in two places, one in TAPEPURGE at 08030000, and the other in STATUS at 22114000. The call in STATUS is :

   DO UNTIL NOT (T1~WAITIO(@500000000,@165,U)) OR    

where it is masking out BOT status (the same in MCP XIII , XV and XVII).

Given that – it seems that a WriteInterrogate call should not be returning BOT (or even EOT) status in its result.

Floating-point arithmetic incorrect results

Floating-point computations do not appear to produce the correct results. The 
results are similar, but different significantly from what is expected in a 
couple of program output listings from 1970. Suspect a rounding or 
normalization problem.

Original issue reported on code.google.com by [email protected] on 11 Jun 2013 at 2:12

Run multiple instances of emulator with shared disk

From Tim Sirianni:
1)  I would love to be able to run multiple instances of the emulator, with the 
possibility of running shared disk among them.  I believe indexedDB is capable 
of shared access, isn't it?   Even if shared disk isn't possible it would be 
fun to run multiple emulators, which I guess means being able to set the name 
of the disk subsystem IDB to open, so this might be an easy change to make 
while you're in the code.  Yes, this is a way to get around the just-one-thread 
javascript execution model.  Two one-processor emulated system should run twice 
as fast a two-processor one on a two-core real system.

Original issue reported on code.google.com by [email protected] on 20 Jul 2014 at 2:38

Extraneous newlines during Firefox 33.1 copy/paste of LinePrinter output

When selecting and copying text from the LinePrinter device "paper" area using 
Firefox 33.1 under Windows 7 and then pasting it into a text editor, there is 
an extra newline in the pasted text every three lines. 

This behavior does not present using Google Chrome. Other browsers and 
platforms have not yet been tested.

This three-line interval corresponds to the internal way the paper area is 
formatted -- each group of three lines is contained within a separate <pre> 
element so that the green-bar effect can be applied with CSS classes. 
Apparently the adjacent <pre> elements cause the Firefox browser to generate an 
extra newline when converting the copied portion of the DOM to text.

This may be a browser-specific issue that we cannot fix within the emulator.

Original issue reported on code.google.com by [email protected] on 15 Nov 2014 at 9:11

Standalone disk directory script works only in Firefox.

The utility to look at the emulated disk directory, list the files and choose to extract file content, appears to work only for Firefox; I'm assuming that this utility is a read-only function, and would not cause any filesystem damage if used while the emulator is running, correct?

Submitted by Terry Heidelberg, 2015-05-04.

COBOL program does not compile under TSS

COBOL program gets EOF NO LABEL during batch compile under TSS:

? USER=TERRY
? COMPILE 0COB/TERRY WITH COBOL FOR LIBRARY
? DATA CARD
000100 * HELLO WORLD PROGRAM                                            00100
000200 IDENTIFICATION DIVISION.                                         00200
000300 PROGRAM-ID.    HELLO.                                            00300
000400 * ENVIRONMENT DIVISION.                                          00400
000500 * DATA DIVISION.                                                 00500
000700 PROCEDURE DIVISION.                                              00700
000800     DISPLAY "HELLO, WORLD"                                       00800
001000     STOP RUN.                                                    99999999
? END

Submitted by Terry Heidelberg on 2015-05-10.

ESPOL compiler declares NESTOG twice

The ESPOL compiler declares the variable NESTOG twice in the same block: (1) as 
a define at 01001310, and (2) as a Boolean variable at 017723000. From the 
cross-reference, it appears that the B5500 compiler ignores the define and uses 
the Boolean. This variable is never used as the destination of an assignment, 
so it's probably just dead code (from a no-longer implemented $-option). The 
define was commented out in ESPOLXEM, so for now will do the same in the base 
ESPOL source.

Original issue reported on code.google.com by [email protected] on 26 Sep 2012 at 11:36

SPO CD command crashes emulator

Entering the CD command on the SPO appears to crash the emulator. This has been 
tried and observed only using the SyllableDebugger thus far. Reloading the 
SyllableDebugger in the browser with F5 and restarting the MCP appears to work, 
but typically get a DKA(R) DISK FAILURE-D21 (EU not ready) error message 
shortly after that. Completely exiting the browser and starting from scratch 
appears to clear the error, and the disk data does not appear to be damaged.

Original issue reported on code.google.com by [email protected] on 24 Mar 2013 at 10:19

SYMBOL/CHECKAL does not compile

Compile errors on source file SYMBOL/CHECKAL, related to MONITORing of labels (it would be good to run CHECKAL, if we assume that it was a well-debugged and reliable diagnostic test...)

Submitted by Terry Heidelberg, 2015-05-04.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.