Re: Defect in the IBM 1130 simulator disk drive emulation

34 views
Skip to first unread message

Claudio Vincenzi - GMail

unread,
Apr 12, 2025, 9:54:32 AMApr 12
to Carl Claunch, ibm...@googlegroups.com
Hi Carl,

This is very good news!

Congratulations for all you have done to keep the IBM 1130 running and preserving its history, 

Hope you get a time to catch your virtual 2315 cartridge setup on video  - would love to see/hear it working. Please share if you already have it !

Future Projects

Currently I am starting to develop a draft version of a new virtual machine architecture and a corresponding C compiler. Initially I am developing both using C for windows and unix, both already compiling and running some simple programs. I am planning  to develop an 1130 version of the VM in a way that compiled C programs can be run on an IBM-1130 or on an 1130 simulator. 

IBM1130 Simulator R8 (V4.4.0)

Now I am more confident in sharing it with the 1130 community. That virus issue took me some hours and some headache to solve. I am sharing the Dropbox .zip distro file to the IBM1130 Google group now. 

Thank you for all your support Carl!

Best regards
Claudio Vincenzi

 
On Sat, Apr 12, 2025 at 9:40 AM Carl Claunch <carlcl...@gmail.com> wrote:
Parabéns Claudio

You have defeated the brainless antivirus programs - the file downloaded and unzipped without a problem. It also runs without complaint!

Diagnostic 309 runs its 12 normal routines perfectly now - excellent. That really improved the fidelity of the disk emulation. 

I have been running the diagnostic to test out my add-on for the 1130, a virtual 2315 cartridge facility. If my device can pass this diagnostic it should be bulletproof for normal uses. The add-on sits between the disk drive and the 1130 controller logic and reads files from a microSD card that contain the contents of a cartridge. Once I load the disk image from the microSD card and turn on the drive motor, I access it just like the image was on a real 2315 cartridge inserted in the drive.

There is a physical cartridge in the disk drive, but it is only used to generate the sector pulses that tell the 1130 controller where the platter is in its rotation. The disk arm of the drive will move in and out with its characteristic buzz or grunt sound, but the heads are prevented from pressing down on the disk surface. Instead, the add-on feeds the data to the 1130 as if it were read from the physical cartridge. Any sectors written are captured by the add-on and written back to the microSD file when the disk is powered down and the virtual cartridge unloaded. 

I wrote a few utilities that convert between your simulator disk file format and the format used for the microSD files. I initialized the CE cartridge image using your simulator, converted the file and load it on an IBM 1130 to run diagnostic 309. 

Again, parabéns for all you have done to improve the IBM 1130 simulators including the side job of defeating overly aggressive antivirus programs. 

Carl



--
Claudio Vincenzi

Bob Flanders

unread,
Apr 12, 2025, 12:52:52 PMApr 12
to ibm...@googlegroups.com

--
IBM1130 discord channel: https://discord.gg/nrFEMt48mE
---
You received this message because you are subscribed to the Google Groups "IBM1130" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ibm1130+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ibm1130/CA%2BPZHmfXcVx67Vrii7Cj_wUYkLd1YLwV%2Bt_7DY8urAvXosV4aA%40mail.gmail.com.

Claudio Vincenzi - GMail

unread,
Apr 12, 2025, 7:10:31 PMApr 12
to ibm...@googlegroups.com

Carlos Abramo

unread,
May 25, 2025, 11:13:41 AMMay 25
to ibm...@googlegroups.com
Team,

I was able to get up and running the Commercial Subroutine Package of the 1130.

Still trying to find how to set the console switches (besides de manual set) sas the BOOT command set all of tham OFF

If anyone is interested, let me know and I will upload them For now, just only run the FORTRAN sample 1 program, pending the other 2.

Regards,
Carlos

Claudio Vincenzi

unread,
May 28, 2025, 12:42:22 AMMay 28
to IBM1130
IBM1130 COMMERCIAL SUBROUTINE PACKAGE - SAMPLE 1.png

Carlos Abramo

unread,
May 28, 2025, 10:08:46 AMMay 28
to ibm...@googlegroups.com
Thank you Claudio, 

Talking of the Commercial Subroutine package, just finished with the 3 samples. 
I have to find out why, in some cases, the ICOMP Subroutine output on Sample 1 gives *** instead of (for example) - 6, as the documentation shows. 

In the emulator, since I was not able to keep the console switch on, after starting the script that runs the samples, I forced it inside the programs to ensure the desired input and output devices are selected.

Should anyone be interested in the source files (both ASM and FOR) , I will be glad to share them. 

All the best, 
Carlos 

Claudio Vincenzi - GMail

unread,
May 28, 2025, 11:13:32 AMMay 28
to ibm...@googlegroups.com
Carlos

Check If there is a "deposit CES xxxx" command on your script. It sets the console switches.

Claudio Vincenzi

You received this message because you are subscribed to a topic in the Google Groups "IBM1130" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ibm1130/WARocwG06ik/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ibm1130+u...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ibm1130/CALu7j1O8Ncd8hMij_Qmfyvt86EOiT-YJ09CFn26P_KHDdTkjbw%40mail.gmail.com.

Carlos Abramo

unread,
May 28, 2025, 12:11:46 PMMay 28
to ibm...@googlegroups.com
Claudio,

Thanks a lot, actually I tried to use the CES command to set the switches as needed but it looks like the boot command reset the switches (set manually or via de CES command.

I am attaching the Script and the Job files for your reference.

All the best,
Carlos


FCOMSP1.do
FCOMSP1.job

Claudio Vincenzi - GMail

unread,
May 28, 2025, 12:52:50 PMMay 28
to ibm...@googlegroups.com
Carlos

I will review the scp boot code and see if It resets the CES settings - It shouldn't.

Thanks for the feedback!

Claudio Vincenzi

br...@quarterbyte.com

unread,
May 28, 2025, 1:16:39 PMMay 28
to ibm...@googlegroups.com
Don't know if this will help but:

In my simh ibm1130 simulator at least, the "boot" command that performs the card reader IPL does set the console switches because they determine the disk drive number from which to boot. Adding the -s switch on the boot command prevents this -- but then the IPL code will read whatever switch values were entered for the commercial software library program. 

If you're using a boot-and-go script, the way to get around the problem is to IPL with no cards in the hopper. DMS will stop once it's booted. Then load cards, set the switches for the program, and continue. Just like you'd do on a real 1130:

    attach prt outputfile
    boot dsk
    deposit ces hexvalue
    attach cr inputfile
    go

Does this help?
brian




Carlos Abramo

unread,
May 28, 2025, 2:49:10 PMMay 28
to ibm...@googlegroups.com
Brian,

That´s a good turn around while Claudio reviews the boot the scp for the boot command.

Will try it!

Carlos

Claudio Vincenzi - GMail

unread,
May 28, 2025, 4:34:30 PMMay 28
to ibm...@googlegroups.com, br...@quarterbyte.com, Carlos Abramo
Hi Brian

you are absolutely right - I forget about that. The boot routine uses the unit number u (from DSKu) to set CES properly since COLD START uses CES to determine which drive to boot DMS. The -s flag avoids this but setting CES with anything besides a drive number on bits 13-15 causes a boot failure. 

Carlos - for the time being I suggest the following.

    attach dsk0 disks\dms.dsk
    attach prt0 spool\outputPrintfile
    attach cr inputCardfile.job
    boot dsk0                # this sets CES to 0x0000 (disk drive 0) before booting
    deposit ces hexvalue     # this will execute after job // PAUSE command
    go
    
The inputCardfile.job should be like this:

    // JOB                                             CSPS1
    // PAUSE
    // FOR
    ** SAMPLE PROGRAM 1
       ...

Or, like this:

    // JOB                                             CSPS1
    // FOR
    ** SAMPLE PROGRAM 1
       ...
       CALL EXIT
       END
    // PAUSE
    // XEQ

I updated your files for that (attached).
This is what I got: no manual intervention was reqd. 
I used // PAUSE right before // XEQ card.
The sample program actually did not execute, since I don't have (yet) the subroutine library on my DMS cartdrige :)
Best regards
Claudio Vincenzi

image.png
    




--
Claudio Vincenzi

Claudio Vincenzi - GMail

unread,
May 28, 2025, 4:35:34 PMMay 28
to ibm...@googlegroups.com, br...@quarterbyte.com, Carlos Abramo
--
Claudio Vincenzi
FCOMSP1.job
FCOMSP1.do

Carlos Abramo

unread,
May 28, 2025, 5:45:14 PMMay 28
to Claudio Vincenzi - GMail, ibm...@googlegroups.com, br...@quarterbyte.com
Claudio and Brian, thanks for your involvement.

In case you (or anybody) is interested, I have attached the Commercial Assembler Routines.

Regards,
Carlos
FORCOM.JOB
Reply all
Reply to author
Forward
0 new messages