Talk:IBM 1130

message: Earlier drafts referred to the 16thbit being used for indirect addressing.  That is incorrect. The indirect bit is in the instruction format, not the address.   Addressing was 15bits (32K 16bit WORDS), addresses were signed so address arithmetic makes sense. KymFarnik 03:08, 2 April 2007 (UTC)
thread_title: Indirect addressing

message: When I was at Waikato University in the late 70s/early 80s, there was an 1130 out the back.  It was already obsolete then and had been replaced by a PDP 11/70 and an 11/34.  It was fascinating, with this great big back panel covered in blinking lights, and the golf-ball typewriter, and great big disk cartridges that seemed to hold about 3 bits of information!  For the fun of it I wrote a 4x4x4 noughts and crosses game on it in Fortran (I think) - it worked pretty well, although it relied on reprinting the position after each move.  I don't think I've got a listing of it any more, though.  I have since written a new game in Delphi (nDm) loosely based on it to run under Windows. Pedrocelli 01:11, 18 September 2007 (UTC)
thread_title:  I remember it well . . . 

message: The article states that the 1130 "became quite popular."  I don't dispute that, but does anyone have information on how many 1130's were manufactured and/or shipped? Peter Flass (talk) 17:17, 1 January 2012 (UTC)
replies: text: I understand that there are tribes in the Amazon who count: one, two, three(?), many.  I'd say the answer is "many". - Denimadept (talk) 19:22, 1 January 2012 (UTC)

text: Fortuitously I happened to run into the Brian Utley interview from IBM1130.org which gave me a ballpark number of 10,000 systems.  Too bad this hasn't yet been transcribed. Peter Flass (talk) 13:55, 2 January 2012 (UTC)
thread_title:  Number Sold?

message: I suggest that the program examples are very long, don't add anything to the article, and should be removed. Peter Flass (talk) 01:35, 3 January 2012 (UTC)
replies: text: IMNSHO, they do add to the article. Especially for those of us that once programmed an 1130. Eeekster (talk) 04:55, 20 February 2012 (UTC)
replies: text: The examples should illustrate something and not just assist in reminiscing.  In my opinion, the example in assembly language illustrates the interplay of job control cards and user program to make a complete job; and illustrates calling routines with both CALL and LIBF, whose mechanics were explained in preceding sections. Spike-from-NH (talk) 14:15, 1 March 2012 (UTC)

text: As far as I can tell this is the only article on Wikipedia that has an in-article MIT copyright notice. Wikipedia's guidelines don't seem to explicitly prohibit the use of an MIT licence but I would be astonished if portions of an article could have a separate licence from the overriding article licence - besides which all submissions require that the submitter irrevocably agrees to release his contribution under the CC BY-SA 3.0 etc. I've taken that out but left the copyright notice in the source code as a non-legally-binding comment. -146.200.202.185 (talk) 12:45, 29 August 2015 (UTC)
replies: text: Author Farnik asserts a copyright to the examples, as one must not when contributing to Wikipedia.  It would be better if Farnik either renounced the copyright to the material from 9 years ago and deleted the copyright notice, or withdrew the contribution.  It is not a solution to leave the copyright notice in the "source code" and declare on the talk page that it doesn't mean what it says.  Spike-from-NH (talk) 14:14, 29 August 2015 (UTC)
replies: text:  Just to clarify, the copyright and license assertions clearly only apply to the assembler example.  The Fortran and APL examples predate it and do not contain such assertions. RossPatterson (talk) 15:23, 29 August 2015 (UTC)

text: The assembler example was added by user KymFarnik on 29 April 2006. Given the coincidence in names, there is a high probability that they are the same person.  Given that the code was added to the article before the CC-BY-SA dual-licensing change in 2009, user KymFarnik would have added the code to the article under the GNU Free Documentation License, and it would still be licensed that way, regardless of what it says in the code comments (or in the article proper, where the copyright assertion that Spike-from-NH just deleted was also added in the same revision).  To make matters more interesting, this article was started in March 2004 by user Farnik, whose last contribution was the same day as user KymFarnik's first, so they may also both be the same person.  RossPatterson (talk) 15:24, 29 August 2015 (UTC)
replies: text: Quibble: It was 146.200.202.185, not I, who deleted the assertion in the text, though I agree with it.  Spike-from-NH (talk) 15:48, 29 August 2015 (UTC)
replies: text: Yes, both id's are me.  I renounce copyright of the code KymFarnik (talk) 06:38, 30 August 2015 (UTC)
thread_title: Program Examples

message: I just looked at the programming examples.  Are we allowed to have stuff which requires such attribution? - Denimadept (talk) 22:45, 29 March 2012 (UTC)
replies: text: As far as I can tell this is the only article on Wikipedia that has an in-article MIT copyright notice. Wikipedia's guidelines don't seem to explicitly prohibit the use of an MIT licence but I would be astonished if portions of an article could have a separate licence from the overriding article licence - besides which all submissions require that the submitter irrevocably agrees to release his contribution under the CC BY-SA 3.0 etc. I've taken that out but left the copyright notice in the source code as a non-legally-binding comment. -146.200.202.185 (talk) 12:45, 29 August 2015 (UTC)
replies: text: Author Farnik asserts a copyright to the examples, as one must not when contributing to Wikipedia.  It would be better if Farnik either renounced the copyright to the material from 9 years ago and deleted the copyright notice, or withdrew the contribution.  It is not a solution to leave the copyright notice in the "source code" and declare on the talk page that it doesn't mean what it says.  Spike-from-NH (talk) 14:14, 29 August 2015 (UTC)
replies: text:  Just to clarify, the copyright and license assertions clearly only apply to the assembler example.  The Fortran and APL examples predate it and do not contain such assertions. RossPatterson (talk) 15:23, 29 August 2015 (UTC)

text: The assembler example was added by user KymFarnik on 29 April 2006. Given the coincidence in names, there is a high probability that they are the same person.  Given that the code was added to the article before the CC-BY-SA dual-licensing change in 2009, user KymFarnik would have added the code to the article under the GNU Free Documentation License, and it would still be licensed that way, regardless of what it says in the code comments (or in the article proper, where the copyright assertion that Spike-from-NH just deleted was also added in the same revision).  To make matters more interesting, this article was started in March 2004 by user Farnik, whose last contribution was the same day as user KymFarnik's first, so they may also both be the same person.  RossPatterson (talk) 15:24, 29 August 2015 (UTC)
replies: text: Quibble: It was 146.200.202.185, not I, who deleted the assertion in the text, though I agree with it.  Spike-from-NH (talk) 15:48, 29 August 2015 (UTC)
replies: text: Yes, both id's are me.  I renounce copyright of the code KymFarnik (talk) 06:38, 30 August 2015 (UTC)
thread_title: And copyright notice

message: Looking at the 360 article I see they list remaining systems, whether working or not.  This should be included also for the 1130. Peter Flass (talk) 01:35, 3 January 2012 (UTC)
replies: text: Last I looked, there was one in the Seattle area, and one in Nice, France.  I'm not sure if the one in Nice is still there. - Denimadept (talk) 05:44, 20 February 2012 (UTC)
replies: text: Based on our pictures, there is also one at the Computer History Museum in California, one at Bletchley Park's National Museum of Computing, and one in private hands at http://www.dvq.com/1130/1130.htm --agr (talk) 19:41, 20 February 2012 (UTC)
replies: text: Might anyone know if there exists, anywhere in the world, a working IBM 1130 system?  (where “working”, in the same sense as used above, just means that it can run some minimal programs on occasion)  76.100.23.153 (talk) 02:31, 3 November 2012 (UTC)
thread_title: Remaining Machines

message: Overall I like the recent edits by Spike-from-NH, but what's the distinction between "operating system" and "monitor?"  The terms are often used interchangeably, e.g. "TOPS-10 monitor" is certainly an OS.  On the other hand MS-DOS is considered an "operating system", and I would rate it about the complexity of DM2 or worse (DOS users usually did direct hardware video IO, bypassing the cruddy video support).  I think the distinction is subjective.  "Not complainin, just askin." Peter Flass (talk) 13:16, 1 March 2012 (UTC)
replies: text: Your comment suggests that wording toward the start of Section 1.2--which now reads, "The 1130 did not have an operating system but a 'monitor.'"--is too categorical, and that's a valid comment.  MS-DOS is an operating system, despite its simplicity, because it provides a "full" range of run-time services (whether or not you elect to use them).  Did the Skeleton Supervisor provide run-time services (beyond the ability to end the current job)?  Even if the user had to link IBM run-time services into his program, they might be regarded as part of an "operating system." Spike-from-NH (talk) 13:35, 1 March 2012 (UTC)

text: PS--Upon further review, the article doesn't lose anything if I just delete the above sentence.  DMS is defined shortly thereafter, and the reader can decide for himself whether it is an "operating system." Spike-from-NH (talk) 14:04, 1 March 2012 (UTC)
replies: text: Resident monitor vs Operating system#Summary - Denimadept (talk) 22:48, 29 March 2012 (UTC)

text: Though I noted above the deletion of the one problematic sentence, I've now added the term resident monitor to that section (Operating procedure). Spike-from-NH (talk) 23:22, 29 March 2012 (UTC)
thread_title:  Operating System vs. Monitor 

message: What were the advantages of using LIBF rather than CALL? Peter Flass (talk) 06:16, 3 March 2012 (UTC)
replies: text: Looking for the answer to my own question, I guess LIBF calls were short calls and saved a word for each call. Peter Flass (talk) 06:25, 3 March 2012 (UTC)
replies: text: I think so.  NickyMcLean has made useful technical corrections, but one change was to move the rationale for LIBF from the start of that section to near the end.  I questioned this on his talk page and will now revert that small piece of his edits. Spike-from-NH (talk) 10:33, 3 March 2012 (UTC)
thread_title:  LIBF vs. CALL 

message: Re: "odd-looking "END START": I don't think that's odd -- don't all assemblers accept a start address on the END statement?  Certainly all I'm aware of. [I know that's not your change, but you made me look...]Peter Flass (talk) 17:27, 22 March 2012 (UTC)
replies: text: Yes, the adjective is a value judgment, and a lot of assemblers do put the start address there.  I debated style on User talk:NickyMcLean, as Nicky likes to highlight the counter-intuitiveness of things in a way I find non-encyclopedic. I'll take another look at the article. Spike-from-NH (talk) 17:39, 22 March 2012 (UTC)

text: Hmm.  I would not have included that sentence at all, but in view of the discussion on style, I won't remove it now.  A much better way than prose to discuss coding nuances (including CALL HLEBC) is by including more comments in the code example itself; I would do so, but am unsure what it means that the example deck is copyrighted. Spike-from-NH (talk) 17:45, 22 March 2012 (UTC)
replies: text: It was after the assembler-based encounters of END START and the like that I came to view with disfavour the absence of such a protocol in higher-level languages, and thus the appearance of desperately lame commentary in the source file such as "  end; {of procedure SIMPLE}" as might appear in Pascal for example. In pl/i, by contrast the name (if supplied) was checked by the compiler, with obvious benefits for nests of "ends", and while I dislike this and that about pl/i, I strongly approve of the name linking and always used it. Adding commentary on statements to explain the statement rather than the usage or effect of the statement is out of place except in a context explaining the statement's form (as in a manual on how to write assembler source) - an example prog. should contain commentary on what the example does (as would be normal for a documented prog.) while the associated text is the place for explanations of how the various protocols employed work, especially those that lead to surprising results such as END START. Or so it seems to me... I mean, the author chose "START" precisely so as to create this contrast. Well, I certainly did this but perhaps I should not extend my guilt to presume others guilty also.NickyMcLean (talk) 20:47, 22 March 2012 (UTC)

text: I too code end; {case} and end; {record} in Pascal although it does nothing.  All of us ASM coders enjoyed the self-contradiction of END START but it was hardly the only reason to name your program's starting point START.  Again, my personal opinion is that the supposed irony doesn't add anything to the article, and I am on the fence as to whether the explanation of END START appreciably helps anyone understand the example. Spike-from-NH (talk) 21:25, 23 March 2012 (UTC)
thread_title:  "END START" 

message: I'm in a nitpickey mood today.  The description of the sample assembler program saye "The printer, however, recognises text in 8-bit EBCDIC".  This is true of the 1403;  I had to look up the 1132 to check my memory, but technically the printer doesn't recognize anything. 
The print wheels are continuously running, and the 1132 continuously makes available to the CPU the code for the print wheel character in position to print next. An instruction of the print routine causes this code to be sent to the CPU. The routine compares this code with each character in the output record. Each time an equal is encountered, a bit is stored in the printer scan field
http://media.ibm1130.org/IBM%20227-3622-1%20FETO-MOI%201132%20printer.pdf
Peter Flass (talk) 22:57, 22 March 2012 (UTC)
replies: text: Well, not quite. The printer when primed for action generates an interrupt whereby it reports that it will shortly be ready to start printing the next character in sequence on a print wheel; the 1130 then scans the text in the supplied buffer for printing to find occurrences of that character and sets ones correspondingly in a special fixed memory area that the printer will later scan (ready or not!) to decide which print wheels to trigger. The character coding could be any coding suitable for the device  but in fact it uses EBCDIC codings, provided by a disc rotating in synchrony with the print wheels that has apertures for on-bits; the pattern of apertures is the EBCDIC code rather than some private code that may provide some hardware advantage - the console printer uses a rotate&tilt code for its golfball for example. It could use card hole patterns, or something else, but EBCDIC is the one. The 1403 printer used its own encodings also, not EBCDIC, but something related to the chain mechanism. As I recall, the character to be printed was reported sixteen position steps before the print impact, thus given successive symbols being in place somewhere on the line, sixteen sets of wheels would be at various stages of motion towards the platen, provided the 1130 kept up with the rotation trigger points. NickyMcLean (talk) 04:05, 23 March 2012 (UTC)
replies: text: Interesting details, I didn't know this.  I thought the 1403 was buffered and the 1130 sent it a line at a time.  Of course it's been a couple of years now, and I didn't really know that much at the time anyhow. Peter Flass (talk) 12:53, 23 March 2012 (UTC)
replies: text: The controller for the 1403 had an internal buffer, so programs just output a line of characters to be printed (in BCD on the 1400 series, EBCDIC on the 360s and up) to the controller.  The controller then generated the appropriate pulses for the print hammer. The 1130 avoided the need for all that circuitry by figuring out the pulse patterns in the printer driver as described above. I'm not sure why the  disc rotating in synchrony with the  1132 print wheels would need anything more than hole for each printwheel position to generate the interrupt and an extra hole to serve as an index mark. The driver can easily keep track of which code in up next to print.--agr (talk) 20:26, 23 March 2012 (UTC)

text: Agreed that the 1130 design minimised expensive electronics, so that peripherals had very little and encoding tasks were done by the cpu which has lots of electronics anyway; a saving. If the 1132 printer signalled merely an index mark (say for the letter A) plus a tick for each impending character, the 1130cpu could contain a schedule of characters in the correct order but the driver would have to be always in synchrony (via interrupts) with the rotation of the print set even when not printing, or, when printing is to begin, would have to await the special index tick and then stay in synchrony. I didn't actually dare disassemble the printer mechanism (or the covers) - though I did attach voltmeters to the console lights - so I can't say for certain, but I thinly recall being told this by the IBM engineer and seeing the disc (but I may be retrospectively creating that recollection), and do not recall seeing any such table in the printer driver. (I twiddled them all, saving space to introduce a WAIT op code) Anyway, a patterned disc with a few light sensors whose state was transferrable to the cpu is not so much circuitry. This would mean that print scanning could commence on the very next character tick. NickyMcLean (talk) 03:16, 24 March 2012 (UTC)
replies: text: Did you meant 1132 in the above?? The 1403 had a controller with a buffer, you just sent it all the  characters for a line in 1403 character code. See http://www.ibm1130.net/functional/Printers.html. As for the the 1132 timing disk, it's tricky to read multiple channels off of a disk like that due to timing issues. Most modern coded wheels use Gray code to minimize such problems.  --agr (talk) 23:32, 29 March 2012 (UTC)
replies: text: Yes, my mistake and corrected, thanks. For the code signalling, a grey code would not be needed as this is not a matter of the position of the disc being measured (as in the direction of the wind) and the position annoyingly hovering close to a boundary with some sensors flickering on/off. It is more like reading paper tape or card punch holes, where the sensor state can be taken at a time in the middle of the state, well after boundaries have passed over the sensors and they have settled into the current state. NickyMcLean (talk) 20:22, 3 April 2012 (UTC)
replies: text: I looked up the 1132 in the IBM 1130 Functional Characteristics manual .  On page 46 it describes the 1132 Read Emitter instruction: "This instruction cause the eight-bit code of the next character to be printed, emitted by the printer, to be read..." So you are indeed correct.--agr (talk) 20:54, 3 April 2012 (UTC)
thread_title:  1132 

message: Didn't the 1800 have real index registers?  I think this was a difference between the 1130 and 1800. Peter Flass (talk) 02:06, 4 April 2012 (UTC)
replies: text: I've post-edited Nicky in the table, as the key point there is not whether or not they are hardware registers but that they have memory addresses. Spike-from-NH (talk) 02:28, 4 April 2012 (UTC)
thread_title:  Index registers 

message: I think the 1620 was a precursor in that it was aimed at the same market - small scientific/engineering organizations.  They were physically both desk-sized systems.  Other than that, you're right.  The 1620 and the 1130 were both about as similar as the 7090 and the 360, or the 1401 and the 360, but I think you could say the 7090 and 1401 were "precursors" of the 360, or maybe better, the 360 was a "successor" of them both. Peter Flass (talk) 23:58, 4 April 2012 (UTC)
thread_title:  1620 

message: 's edit to the article is correct; anyone following the article's External Links can download a PDF of the FORTRAN manual preceding Eastern Michigan's improvements, which billed itself not as FORTRAN II but "1130/1800 Basic FORTRAN IV".  Spike-from-NH (talk) 00:03, 18 September 2014 (UTC)
thread_title:  FORTRAN IV 

message: I can't seem to find information on how the LET/FLET entry identifies the disk location of the file.  Also DUP documentation touches on "disk blocks" which seem to be separate from sectors but I can't find a definition. Peter Flass (talk) 01:41, 7 February 2015 (UTC)
replies: text: You've checked Disk Monitor System, Version 2? - Denimadept (talk) 01:48, 7 February 2015 (UTC)

text: I guess you've been looking here. Did it just calculate the location by adding up the lengths of all the previous files? It says in the article the disk was always kept defragged. I remember whenever you deleted a file the files further along the disk would be inevitably copied down to remove any embedded free space. If the file was an old one and so early on the disk this would take ages. Thincat (talk) 22:38, 7 February 2015 (UTC)
replies: text: The defrag statement was there before I worked on the article; I have to verify it, I think in passing I noted a reference to using DUP to compact the disk.  The way the disk was structured it would not need to be defragged as often as other systems. Peter Flass (talk) 22:59, 7 February 2015 (UTC)
replies: text: I recall no DUP command to compact the disk. Rather, whenever a file was deleted, DUP went right ahead and did the compaction. The immediate compaction is mentioned here (search for *DELETE). However, it doesn't explicitly say that file locations are not stored (and, as I said, I think they are calculated). Thincat (talk) 00:03, 8 February 2015 (UTC)
replies: text: Note "1DUMY" entries. - Denimadept (talk) 00:55, 8 February 2015 (UTC)
thread_title:  Disk formats 

message: Regarding the revert war over the Fortran code example, I don't know and don't care about fortran versus fortranfixed, as ensuring that keywords and numerals appear in pretty colors does not help understanding.  However, the last edit of  (reverted by ) solved one problem:  Interpreting as Fortran the numeric data at the end of the card deck imposed coloration that actively impeded understanding.
There is a fundamental problem here:  The example is a deck of punched cards that includes Job Control Language (//), Fortran, and data and cannot be treated correctly in a single  block.
Separately, youse should talk to each other (for example: below) and agree on the goal of your edits.  Spike-from-NH (talk) 13:10, 15 April 2016 (UTC)
replies: text: We have talked.  It's not a war.  It's trying to get the formatting to come out straight.  Look at the details of the edits. - Denimadept (talk) 23:41, 15 April 2016 (UTC)
replies: text: Very good.  "War" not in the sense of armaments and casualties.  Thanks.  Spike-from-NH (talk) 00:39, 16 April 2016 (UTC)
replies: text: Thanks, I know what an edit war is. :->  - Denimadept (talk) 16:50, 16 April 2016 (UTC)
thread_title:  Fortran code example 

message: I don't know what has changed, but parts of this article using , such as the instruction-set overview and some short code examples, are now being displayed in a variable-width font.  This impedes understanding, as it prevents the columns from lining up.  Spike-from-NH (talk) 14:44, 24 May 2016 (UTC)
replies: text: The <pre>, <source lang="fortranfixed"> and lines with leading spaces all look fixed-width to me (and I know how important it is for the columns to line up right) Firefox 46, Windows 10 but also Chrome and Edge. Thincat (talk) 15:33, 24 May 2016 (UTC)
replies: text: I glanced at the instruction set overview and it looks fine to me -Safari, iOS on iPAD. Peter Flass (talk) 16:02, 24 May 2016 (UTC)
thread_title:  PRE 

message: I added a section listing existing 1130 systems.  It would be nice for someone who knows to update the status: display/storage, working/non-working,, etc. or add any other existing systems. Peter Flass (talk) 13:34, 13 July 2016 (UTC)
thread_title:  1130s today 

message: Does anyone know when the production run ended? - Denimadept (talk) 18:42, 7 November 2017 (UTC)
thread_title:  End of production 

message: 1973: Xerox had a 530 at a trade show. People stopped by. 530s were bought by 1130 shops. The success stories of the 530, however, were not enough to offset that the 560s apparently didn't do as well. Pi314m (talk) 01:49, 17 September 2020 (UTC)
thread_title: Xerox 530

message: The section "reserved memory" has the SAC interrupting on IL1,2,3,4,5. Attachment Channel RPQ description lists only IL4. It makes sense that it would use only one interrupt level. I believe the SCA used IL3. I guess the info in the article as written comes from "Functional Characteristics." Can anyone clarify? I don't want to make changes unless someone else agrees. Peter Flass (talk) 14:56, 28 May 2023 (UTC)
thread_title:  SAC 

message: As far as I know, the 1130 Fortran IV compilers follows what the Fortran 66 standard calls "Basic Fortran". That is, the subset is defined in the standard. Among others, it allows only five letters for variable names. I have the 1130 version of IBM's ECAP, which is written that way. They took all the six letter variable names and replaced the middle two letters with Z. Also, it doesn't have the LOGICAL type and LOGICAL IF statement. Gah4 (talk) 05:12, 10 May 2024 (UTC)
thread_title:  subset