z/PDOS university challenge
I now have a pure public domain 3390 disk containing z/PDOS and assorted utilities. There isn't a lot of public domain (as opposed to copyrighted freeware like most z/Linux stuff) stuff available for the mainframe, so currently there are only crude editing capabilities available. But you can IPL from DVD/ftp, card reader, tape or 3390. http://pdos.org Oh yeah - there's a subset of C90 available so you can write very limited C. That's the limit of what is available in the public domain. Also you can run .com files the same way you could on MSDOS. .exe files are IEBCOPY unloads. MVS API in both cases. BFN. Paul. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: z/PDOS-32 test on real hardware
On Wed, 21 Dec 2022 03:44:56 -0600, Paul Edwards wrote: >Would someone be able to try out the latest z/PDOS on >real hardware? There is a new version at http://pdos.org which allows IPL from tape (and restore from 3390 disk image on tape) - no IBM or other vendor software required - and it has been confirmed to work on real hardware. Pics here: https://groups.io/g/hercules-380/message/2190 https://groups.io/g/hercules-380/message/2191 https://groups.io/g/hercules-380/message/2193 The first IPL is directly on an LPAR. The second one, with a real terminal was under z/VM. BFN. Paul. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: z/PDOS-32 test on real hardware
On Wed, 21 Dec 2022 20:15:49 +, Rahim Azizarab wrote: >I don't have access to real iron; but did you ever try to run it under qemu >x390? As far as I know, qemu doesn't support CKD disks or connecting a 3270 terminal. But if that assumption is wrong, I can try it if you give me a syntax that works for a 3390-1 and what I need to do to attach a 3270. Thanks. Paul. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: z/PDOS-32 test on real hardware
I don't have access to real iron; but did you ever try to run it under qemu x390? emu-system-s390x -display none -machine s390-ccw-virtio -m 2048M -cpu max,zpci=on,msa5-base=off -drive file=dasd/ubuntu.qcow2,format=qcow2 \ -net nic,model=virtio \ -vnc 127.0.0.1:4 \ -net nic \ -net user,id=user.0,hostfwd=tcp::-:22 & regards; Rahim On Wednesday, December 21, 2022 at 03:45:08 AM CST, Paul Edwards wrote: Hi. Would someone be able to try out the latest z/PDOS on real hardware? It's available from http://pdos.org (down the bottom) It is a 3390-1 CKD image and you will need OSS-ICC in order to define a 3270 terminal (SYSG is not used). In addition you will need to know the subchannel id of the 3270 terminal and zap the CKD image with that number, unless the guess of x'0001' is correct (it's correct on Hercules). This version of z/PDOS runs in AM64 and maps the 4-8 GiB region on to 0-4 GiB so that 32-bit applications have the full 4 GiB available, and negative indexes (which in AM64 resolve to addresses above 4 GiB) are not an issue. It's effectively AM32, but not really, because it doesn't rule out the possibility of 64-bit programs running also. If you were to change the DAT tables, 64-bit programs could access virtual addresses above 8 GiB which would presumably map to real memory above 4 GiB. The executables that it runs are marked as AM31, suitable for running on z/OS, and also run as AM24 on MVS 3.8J. But z/PDOS runs them unconditionally as AM64=32. Note - not just source code compatible - the unchanged executables run on all those environments (MVS 3.8J will ignore the AM31 and run as AM24, z/PDOS will ignore the AM31 and run as AM64/32). Theoretically, anyway. I've only tested on Hercules/380, not real z/Arch hardware that I don't have access to. Thanks. Paul. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
z/PDOS-32 test on real hardware
Hi. Would someone be able to try out the latest z/PDOS on real hardware? It's available from http://pdos.org (down the bottom) It is a 3390-1 CKD image and you will need OSS-ICC in order to define a 3270 terminal (SYSG is not used). In addition you will need to know the subchannel id of the 3270 terminal and zap the CKD image with that number, unless the guess of x'0001' is correct (it's correct on Hercules). This version of z/PDOS runs in AM64 and maps the 4-8 GiB region on to 0-4 GiB so that 32-bit applications have the full 4 GiB available, and negative indexes (which in AM64 resolve to addresses above 4 GiB) are not an issue. It's effectively AM32, but not really, because it doesn't rule out the possibility of 64-bit programs running also. If you were to change the DAT tables, 64-bit programs could access virtual addresses above 8 GiB which would presumably map to real memory above 4 GiB. The executables that it runs are marked as AM31, suitable for running on z/OS, and also run as AM24 on MVS 3.8J. But z/PDOS runs them unconditionally as AM64=32. Note - not just source code compatible - the unchanged executables run on all those environments (MVS 3.8J will ignore the AM31 and run as AM24, z/PDOS will ignore the AM31 and run as AM64/32). Theoretically, anyway. I've only tested on Hercules/380, not real z/Arch hardware that I don't have access to. Thanks. Paul. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: z/PDOS
Paul, the SYSG console seems to be used with the SERVC (B220) opcode (Undocumented in the POP). Take a look to service.c in the Hercules source code. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
z/PDOS
Hi. I have mentioned the PDOS (Public Domain Operating System) project before, but just recently I have updated it to work on z/Arch. It's still somewhat in "Proof of Concept" stage, but it is already producing interesting results. You can obtain a CKD image from the bottom of this page: http://pdos.org The image works under standard Hercules, but it probably won't work on real z/Arch hardware unless you have third-party hardware to give it a local 3270 to IPL from, or run it under z/VM. I'd like to run it from the HMC 3270 "SYSG" instead, but I don't know what code changes I need to make to do that. z/PDOS should IPL from all z/Arch hardware, including hardware that starts in AM64. You can see the startup code here: https://sourceforge.net/p/pdos/gitcode/ci/master/tree/pdpclib/sapstart.asm where it does a SIGP which may fail because it is already in z/Arch mode, but that is ignored, followed by a BSM to put it into AM64 if it isn't already. z/PDOS is written in C and assembler and should build on z/OS (I built on MVS/380). The C compiler used is GCCMVS which uses the i370 target. The interesting thing about the i370 code is that it is AMODE-neutral, ie the 32-bit instructions are the same regardless of whether it is AM24, AM31, AM64 or even a theoretical AM32. What this means is that when running as AM64 the full 4 GiB is available, and there is a command "memtest" which demonstrates a memcpy (MVC) crossing the 2 GiB bar. z/PDOS is designed to run a subset of MVS programs. That subset is currently largely C programs built with GCCMVS. There is one other problem in that the i370 target sometimes produces negative indexes, usually -1, expecting that to be truncated to a value in the 2 GiB or 4 GiB range. That doesn't happen in AM64 and instead the index goes into the 4 GiB to 8 GiB range. I was able to get "gcc --version" to work by giving Hercules 8 GiB of memory instead of 4 GiB, but the proper solution is to somehow restrict indexing to values in the 0-2 GiB range, and force an addition/subtraction in the rare situation where you want a negative index. Anyone interested in assisting? Thanks. Paul. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN