Re: building pilos
> > > > > (using UART for io using --serial stdio option in qemu). The drivers/rest > > of the kernel infrastructure could then be crowd sourced :) > > Will you give it a try? > I think that I am close to doing it with miniPicoLisp :) > You mean Pil64 and PilOS? (Beause pil21 has no assembly sources) > > The sources of Pil64 and PilOS *are* Lisp files. They are evaluated via > 'load' > in "src64/mkAsm.l". That's why I said in the last mail that a running > PicoLisp > is nneded to bootstrap the build. > > I think I misunderstood. I'll get back to this later. Regards, Kashyap > >
Re: building pilos
On Thu, Oct 05, 2023 at 08:53:23AM -0700, C K Kashyap wrote: > How about something that runs on qemu using a bootloader like limine/grub? > It could be really vanilla without even the need for a keyboard driver > (using UART for io using --serial stdio option in qemu). The drivers/rest > of the kernel infrastructure could then be crowd sourced :) Will you give it a try? > Btw .. perhaps you have already answered this but, does it make sense to > have a different extension for the assembly files? Technically, I don't > believe that they are plicolisp sources right? You mean Pil64 and PilOS? (Beause pil21 has no assembly sources) The sources of Pil64 and PilOS *are* Lisp files. They are evaluated via 'load' in "src64/mkAsm.l". That's why I said in the last mail that a running PicoLisp is nneded to bootstrap the build. ☺/ A!ex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: building pilos
How about something that runs on qemu using a bootloader like limine/grub? It could be really vanilla without even the need for a keyboard driver (using UART for io using --serial stdio option in qemu). The drivers/rest of the kernel infrastructure could then be crowd sourced :) Btw .. perhaps you have already answered this but, does it make sense to have a different extension for the assembly files? Technically, I don't believe that they are plicolisp sources right? Regards, Kashyap On Thu, Oct 5, 2023 at 8:03 AM Alexander Burger wrote: > On Thu, Oct 05, 2023 at 07:32:26AM -0700, C K Kashyap wrote: > > Any chance that we could expect a pil21 based pilos? > > This would indeed be fascinating. Perhaps there is some LLVM backend to > Verilog? > But PilOS is a huge task, and needs lots of drivers etc. for some target > hardware. I have no hope for the near future. > > > > I had not been watching pil21 for a while - I looked at it now and I > really > > liked "lib.c" :) If I understood right, then all the platform > > dependencies are in there (atleast as far as the picolisp executable) > > Yes, this is correct. In that way it is possible to distribute the > pre-built > *.ll files, and a running PicoLisp is no longer needed to bootstrap the > build. > > ☺/ A!ex > > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: building pilos
On Thu, Oct 05, 2023 at 07:32:26AM -0700, C K Kashyap wrote: > Any chance that we could expect a pil21 based pilos? This would indeed be fascinating. Perhaps there is some LLVM backend to Verilog? But PilOS is a huge task, and needs lots of drivers etc. for some target hardware. I have no hope for the near future. > I had not been watching pil21 for a while - I looked at it now and I really > liked "lib.c" :) If I understood right, then all the platform > dependencies are in there (atleast as far as the picolisp executable) Yes, this is correct. In that way it is possible to distribute the pre-built *.ll files, and a running PicoLisp is no longer needed to bootstrap the build. ☺/ A!ex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: building pilos
Thanks Alex, Any chance that we could expect a pil21 based pilos? I had not been watching pil21 for a while - I looked at it now and I really liked "lib.c" :) If I understood right, then all the platform dependencies are in there (atleast as far as the picolisp executable) On Thu, Oct 5, 2023 at 2:09 AM Alexander Burger wrote: > Hi Kashyap, > > > It looks like pilos build may be broken :( I think it has dependency on > > pil64. > > This may well be. PilOS is built by PicoLisp, and is a modified and > partially > scaled down version of Pil64. > > ☺/ A!ex > > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: building pilos
Hi Kashyap, > It looks like pilos build may be broken :( I think it has dependency on > pil64. This may well be. PilOS is built by PicoLisp, and is a modified and partially scaled down version of Pil64. ☺/ A!ex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
building pilos
Hey Alex, It looks like pilos build may be broken :( I think it has dependency on pil64. I will take a look more later but it would be great if you could share the updated instructions :) Regards, Kashyap
Re: [alexander.she...@web.de: PilOS: Fixing "READ ERROR 09" error message during boot.]
On Mon, Sep 04, 2017 at 06:02:49PM +0200, Alexander Burger wrote: > Hi all, > > this change was sent to be by Alexander Shendi. It should fix one of the > problems with some BIOSes when using PilOS. > > If anybody who observed "READ ERROR 09" in the past, please test this new > version! :) Sorry, I forgot to mention that I uploaded a new TGZ with the change as ever to https://software-lab.de/pilos.tgz ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
[alexander.she...@web.de: PilOS: Fixing "READ ERROR 09" error message during boot.]
Hi all, this change was sent to be by Alexander Shendi. It should fix one of the problems with some BIOSes when using PilOS. If anybody who observed "READ ERROR 09" in the past, please test this new version! :) ♪♫ Alex - Forwarded message from Alexander Shendi - Date: Mon, 4 Sep 2017 16:00:45 +0200 From: Alexander Shendi To: a...@software-lab.de Subject: PilOS: Fixing "READ ERROR 09" error message during boot. Dear Alexander, I write to you in english, so you can forward the mail to the picolisp mailing list, should the need arise. As you may remember, PilOS refuses to boot under certain BIOSes, dying instead with an error message of "READ ERROR 09". This is caused by the fact that pilOS uses INT 13h, function 42h to read the entire disk image in one go. Some (Many?) Bioses do not support reading more than 127 sectors in one read. So my idea for a fix is to read in the whole image in chunks of 127 sectors. To do this I created an auxillary Disk Address Packet structure named, rather boringly, "DAP1". DAP1:# Disk Address Packet .word 16 # Size .word 127 # Number of sectors .word 0x7E00 # Offset .word 0 # Segment .quad 1 # Start sector As you can see, it is the same as "DAP", except for the number of sectors to be read. I kept the DAP structure in order not to confuse later code that uses it. I then read the first 127 sectors using "DAP1" and and adjust the segment and the start sector prior to each read in each loop iteration. The following is the modified boot code that reads the image from file "x86-64/beg.l": # Load sectors from drive in DL mov $LoadMsg, %si # Print message call print mov $DAP1, %si# Disk Address Packet mov $0x42, %ah# Extended Read Sectors int $0x13 # Drive interrupt jc readError loop_001: mov $ChunkMsg, %si# Print message call print mov $4064, %ax add (DAP1+6), %ax mov %ax, (DAP1+6) mov (DAP1+8), %ax add $127, %ax mov %ax, (DAP1+8) mov (Drive), %dl mov $DAP1, %si# Disk Address Packet mov $0x42, %ah# Extended Read Sectors int $0x13 # Drive interrupt jc readError mov (DAP1+8), %ax # add $127, %ax cmp %ax, (DAP+2) jg loop_001 I hope this makes my intent clear. I am happy to answer any questions on either IRC or by e-mail. I am attaching two files: * beg.l (modified version) * beg.l.diff: context diff to the original version. Best Regards, Alexander Shendi *** ../pilos/x86-64/beg.l 2015-07-02 12:50:27.0 +0200 --- ./x86-64/beg.l 2017-09-04 14:52:06.430487244 +0200 *** *** 23,33 # Load sectors from drive in DL mov $LoadMsg, %si # Print message call print !mov $DAP, %si # Disk Address Packet mov $0x42, %ah# Extended Read Sectors int $0x13 # Drive interrupt jc readError ! # Check for long mode mov $LongMsg, %si # Print message call print --- 23,52 # Load sectors from drive in DL mov $LoadMsg, %si # Print message call print !mov $DAP1, %si# Disk Address Packet mov $0x42, %ah# Extended Read Sectors int $0x13 # Drive interrupt jc readError ! loop_001: !mov $ChunkMsg, %si# Print message !call print !mov $4064, %ax !add (DAP1+6), %ax !mov %ax, (DAP1+6) !mov (DAP1+8), %ax !add $127, %ax !mov %ax, (DAP1+8) !mov (Drive), %dl !mov $DAP1, %si# Disk Address Packet !mov $0x42, %ah# Extended Read Sectors !int $0x13 # Drive interrupt !jc readError !mov (DAP1+8), %ax !# add $127, %ax !cmp %ax, (DAP+2) !jg loop_001 ! ! cont_001: # Check for long mode mov $LongMsg, %si # Print message call print *** *** 91,100 --- 110,128 .word 0 # Segment .quad 1 # Start sector + DAP1:# Disk Address Packet +.word 16 # Size +.word 127 # Number of sectors +.word 0x7E00 # Offset +.word 0 # Segment +.quad 1 # Start sector + + Drive: .byte 0 # Boot device LoadMsg: .asciz "Loading PilOS\r\n" + ChunkMsg:.asciz "Read Chunk!\r\n" ReadError: .asciz "READ ERROR 00" LongMsg: .asciz "Checking long mode\r\n&quo
Re: Is this the right place for bugs / questions about PilOS?
On Sat, Apr 23, 2016 at 02:55:47AM +0200, Danilo Kordic wrote: > 0.0 It is alive! Acer AOD270 (Intel Atom N2600). > `` PilOS 15.11.0 So Acer again! I wonder if any other BIOS (in addition to qemu's) will work. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Is this the right place for bugs / questions about PilOS?
0.0 It is alive! Acer AOD270 (Intel Atom N2600). `` PilOS 15.11.0 Heap: 1010MiB : '' I downloaded pios.tgz a few minutes ago, or so it feels ;) . Just `dd'ed x86-64.img.
Re: Is this the right place for bugs / questions about PilOS?
Robert, The link <http://qemu.weilnetz.de/w64/2014/qemu-w64-setup-20140715.exe> you gave is, interestingly, quite helpful. (That's the non-404 version, because things got moved around, it seems.) I was ambivalent about using an emulator inside Wine (since I use Linux, and don't have much access to Windows), but trying to compile the sources for that version, and all surrounding versions, was met with linker errors only *after* 99% of the object files were generated. Compilation issues aside, the Windows exe does in fact run inside Wine and PilOS does in fact run inside that, so thank you for that. :D I'll still have to see if I can pick up an old-ish cheap-ish Acer somewhere, if that's what I gotta do to run a modern Lisp on bare-metal. ~cat On Fri, Apr 15, 2016 at 8:12 PM, Robert Herman wrote: > Cat, > > Try an older version of qemu. If it works, you can try newer ones if they > have features or bugs corrected that may affect you. > > I had the same problem, but thanks to Joe Bogner and Alex, I have it > running. Here's the link to the older qemu that worked: > > http://qemu.weilnetz.de/w64/qemu-w64-setup-20140715.exe > > I was running it on Win 8 64-bit at the time. > > > Regards, > > Rob > > > > On 16 April 2016 at 02:46, cat stevens wrote: > >> > This is an error from the BIOS (Was this also Qemu?). >> >> Yes, that was Qemu. Here's a screenshot <http://imgur.com/5bCRrVF.png>. >> >> It comes after the "Loading PilOS" text, and I found the string constant >> "READ ERROR 00" in the image binary (at 0xBF), so I thought that was >> PilOS. >> >> I also recompiled using the provided source / instructions on the Wiki, >> and >> tried booting the resulting "x86_64.bin" in Qemu and bare metal with the >> same results. >> >> > Most of today's BIOSes seem to implement only the absolute minimum, >> > which is understandable as modern OSes don't call the BIOS so much any >> > more. >> >> My PC's BIOS is the same (un-updated) one it shipped with, but the trouble >> with BIOSes is that it's unlikely to find two identical confiugurations on >> any two systems. :) >> >> > This is a pity, and I don't know what to recommend. But at least >> > Qemu I would have expected to work ... >> >> I was kinda looking forward to having a Lisp OS on bare metal, but maybe >> this is why there aren't that many. :P >> I'm all ears if you've any suggestions, and I'll definitely keep an eye on >> development. >> >> ~ cat >> >> On Fri, Apr 15, 2016 at 12:57 PM, Alexander Burger >> wrote: >> >> > On Fri, Apr 15, 2016 at 12:08:56PM -0400, cat stevens wrote: >> > > Hi! I am very interested in the idea and look of PilOS; however, I'm >> > having >> > > some issues trying to get started with it. Can I ask about those here? >> > >> > Sure! :) >> > >> > >> > > First, the command on the Wiki seems to have an issue, which I asked >> > about >> > > here >> > > < >> > >> http://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu >> > > >> > > -- it seems like it should be: >> > > >> > > qemu-system-x86_64 -drive format=raw,file=x86-64.img >> > >> > What I used for Qemu was >> > >> >$ qemu-system-x86_64 -m 4096 -smp 4 -ctrl-grab -no-reboot >> > pilos/x86-64.img >> > >> > so it is similar to what you wrote in the above link, and it worked fine >> > for me. >> > >> > >> > >> > > Even when I run that (apparently more correct) command, PilOS gives >> "READ >> > > ERROR 09" and hangs. >> > >> > This is an error from the BIOS (Was this also Qemu?). >> > >> > >> > > I also tried booting my laptop from the raw disk image written to a >> USB >> > >
Re: Is this the right place for bugs / questions about PilOS?
On Fri, Apr 15, 2016 at 03:46:06PM -0400, cat stevens wrote: > > This is an error from the BIOS (Was this also Qemu?). > > Yes, that was Qemu. Here's a screenshot <http://imgur.com/5bCRrVF.png>. > > It comes after the "Loading PilOS" text, and I found the string constant > "READ ERROR 00" in the image binary (at 0xBF), so I thought that was PilOS. Correct. PilOS prints this message after the $0x42 BIOS call (Extended Read Sectors) returned an error (Carry bit set). > I was kinda looking forward to having a Lisp OS on bare metal, but maybe > this is why there aren't that many. :P Until now we know that it works on - Acer TavelMate P-253E (mine) - Acer Aspire One 722 (Mattias Sundblad) Perhaps you can try to find one of these second-hand? ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Is this the right place for bugs / questions about PilOS?
Cat, Try an older version of qemu. If it works, you can try newer ones if they have features or bugs corrected that may affect you. I had the same problem, but thanks to Joe Bogner and Alex, I have it running. Here's the link to the older qemu that worked: http://qemu.weilnetz.de/w64/qemu-w64-setup-20140715.exe I was running it on Win 8 64-bit at the time. Regards, Rob On 16 April 2016 at 02:46, cat stevens wrote: > > This is an error from the BIOS (Was this also Qemu?). > > Yes, that was Qemu. Here's a screenshot <http://imgur.com/5bCRrVF.png>. > > It comes after the "Loading PilOS" text, and I found the string constant > "READ ERROR 00" in the image binary (at 0xBF), so I thought that was PilOS. > > I also recompiled using the provided source / instructions on the Wiki, and > tried booting the resulting "x86_64.bin" in Qemu and bare metal with the > same results. > > > Most of today's BIOSes seem to implement only the absolute minimum, > > which is understandable as modern OSes don't call the BIOS so much any > > more. > > My PC's BIOS is the same (un-updated) one it shipped with, but the trouble > with BIOSes is that it's unlikely to find two identical confiugurations on > any two systems. :) > > > This is a pity, and I don't know what to recommend. But at least > > Qemu I would have expected to work ... > > I was kinda looking forward to having a Lisp OS on bare metal, but maybe > this is why there aren't that many. :P > I'm all ears if you've any suggestions, and I'll definitely keep an eye on > development. > > ~ cat > > On Fri, Apr 15, 2016 at 12:57 PM, Alexander Burger > wrote: > > > On Fri, Apr 15, 2016 at 12:08:56PM -0400, cat stevens wrote: > > > Hi! I am very interested in the idea and look of PilOS; however, I'm > > having > > > some issues trying to get started with it. Can I ask about those here? > > > > Sure! :) > > > > > > > First, the command on the Wiki seems to have an issue, which I asked > > about > > > here > > > < > > > http://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu > > > > > > -- it seems like it should be: > > > > > > qemu-system-x86_64 -drive format=raw,file=x86-64.img > > > > What I used for Qemu was > > > >$ qemu-system-x86_64 -m 4096 -smp 4 -ctrl-grab -no-reboot > > pilos/x86-64.img > > > > so it is similar to what you wrote in the above link, and it worked fine > > for me. > > > > > > > > > Even when I run that (apparently more correct) command, PilOS gives > "READ > > > ERROR 09" and hangs. > > > > This is an error from the BIOS (Was this also Qemu?). > > > > > > > I also tried booting my laptop from the raw disk image written to a USB >
Re: Is this the right place for bugs / questions about PilOS?
> This is an error from the BIOS (Was this also Qemu?). Yes, that was Qemu. Here's a screenshot <http://imgur.com/5bCRrVF.png>. It comes after the "Loading PilOS" text, and I found the string constant "READ ERROR 00" in the image binary (at 0xBF), so I thought that was PilOS. I also recompiled using the provided source / instructions on the Wiki, and tried booting the resulting "x86_64.bin" in Qemu and bare metal with the same results. > Most of today's BIOSes seem to implement only the absolute minimum, > which is understandable as modern OSes don't call the BIOS so much any > more. My PC's BIOS is the same (un-updated) one it shipped with, but the trouble with BIOSes is that it's unlikely to find two identical confiugurations on any two systems. :) > This is a pity, and I don't know what to recommend. But at least > Qemu I would have expected to work ... I was kinda looking forward to having a Lisp OS on bare metal, but maybe this is why there aren't that many. :P I'm all ears if you've any suggestions, and I'll definitely keep an eye on development. ~ cat On Fri, Apr 15, 2016 at 12:57 PM, Alexander Burger wrote: > On Fri, Apr 15, 2016 at 12:08:56PM -0400, cat stevens wrote: > > Hi! I am very interested in the idea and look of PilOS; however, I'm > having > > some issues trying to get started with it. Can I ask about those here? > > Sure! :) > > > > First, the command on the Wiki seems to have an issue, which I asked > about > > here > > < > http://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu > > > > -- it seems like it should be: > > > > qemu-system-x86_64 -drive format=raw,file=x86-64.img > > What I used for Qemu was > >$ qemu-system-x86_64 -m 4096 -smp 4 -ctrl-grab -no-reboot > pilos/x86-64.img > > so it is similar to what you wrote in the above link, and it worked fine > for me. > > > > > Even when I run that (apparently more correct) command, PilOS gives "READ > > ERROR 09" and hangs. > > This is an error from the BIOS (Was this also Qemu?). > > > > I also tried booting my laptop from the raw disk image written to a USB
Re: Is this the right place for bugs / questions about PilOS?
On Fri, Apr 15, 2016 at 12:08:56PM -0400, cat stevens wrote: > Hi! I am very interested in the idea and look of PilOS; however, I'm having > some issues trying to get started with it. Can I ask about those here? Sure! :) > First, the command on the Wiki seems to have an issue, which I asked about > here > <http://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu> > -- it seems like it should be: > > qemu-system-x86_64 -drive format=raw,file=x86-64.img What I used for Qemu was $ qemu-system-x86_64 -m 4096 -smp 4 -ctrl-grab -no-reboot pilos/x86-64.img so it is similar to what you wrote in the above link, and it worked fine for me. > Even when I run that (apparently more correct) command, PilOS gives "READ > ERROR 09" and hangs. This is an error from the BIOS (Was this also Qemu?). > I also tried booting my laptop from the raw disk image written to a USB. It > said "Loading PilOS", then printed "Checking for long support..." and hung, > not continuing for the time I let it sit at that screen (about 20 minutes). > > My laptop is a Toshiba Satellite from 2012, it's 64-bit, has lots of ram > and has inbuilt SSE 4.2 support, so I don't think it's my hardware. > > Could anyone offer some pointers here? Thanks! It seems I was lucky with my Acer Travelmate. All BIOS calls worked as documented. But from the feedback I received meanwhile I get the impression that this is rather the exception than the rule. Most of today's BIOSes seem to implement only the absolute minimum, which is understandable as modern OSes don't call the BIOS so much any more. This is a pity, and I don't know what to recommend. But at least Qemu I would have expected to work ... ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Is this the right place for bugs / questions about PilOS?
Hi! I am very interested in the idea and look of PilOS; however, I'm having some issues trying to get started with it. Can I ask about those here? First, the command on the Wiki seems to have an issue, which I asked about here <http://unix.stackexchange.com/questions/276480/booting-a-raw-disk-image-in-qemu> -- it seems like it should be: qemu-system-x86_64 -drive format=raw,file=x86-64.img Even when I run that (apparently more correct) command, PilOS gives "READ ERROR 09" and hangs. I also tried booting my laptop from the raw disk image written to a USB. It said "Loading PilOS", then printed "Checking for long support..." and hung, not continuing for the time I let it sit at that screen (about 20 minutes). My laptop is a Toshiba Satellite from 2012, it's 64-bit, has lots of ram and has inbuilt SSE 4.2 support, so I don't think it's my hardware. Could anyone offer some pointers here? Thanks!
Re: Booting PilOS
I had the same issue, and it was pointed out to me by Alex and Joe to try an older version of qemu. http://www.mail-archive.com/picolisp%40software-lab.de/msg05495.html I hope this helps you too. Rob On 2 November 2015 at 14:50, Alexander Burger wrote: > Hi me, > > On Sat, Oct 31, 2015 at 04:48:19PM -0400, me wrote: > > Hello list. I've been following the pilOS progress and very interested > in > > running picolisp on bare metal. > > > > After following the instructions my exploration was halted shortly after > > booting. "Welcome to pilOS!" line followed by "Error 9" whatever that > is. > > Hmm, in fact there are no such messages ;) > > If it was "Loading PilOS" first, and then "READ ERROR 09", it is "DMA > crossed 64K boundary" (http://www.bioscentral.com/misc/biosint13.htm). > This probably means that the BIOS is not able to load more than 64K > bytes. > > > > Some other possible platforms to explore may be the OpenSPARC T2 (64-Bit, > > Gpl2 licensed, SoC) or perhaps RISC-V which is a 64-bit BSD licensed SoC > on > > an FPGA for a fully open OS running on a fully open processor. While I'm > > not sure how to convert existing assembly code to these architectures I'm > > willing to help however possible to create a picolisp all the way down > > computer. > > I would recommend to wait a little more until the ARMv8 (arm64) port of > PicoLisp is ready. I'm currently testing on a Nexus 9 tablet. Arm64 > seems to be the best architecture for pil64 so far. > > Sparc CPUs are not supported, and will probably never be. There are > simply not many people wanting to use pil on a sparc, I suppose. And > porting to a new architecture is a huge task, the arm64 port took > several weeks of my spare time already. > > > > No matter what happens I'm excited for pilOS and picolisp, thanks for the > > excellent language Alex and everyone else's efforts as well! > > Thank you! If anybody really wants to delve into it, I would be glad if > I could get information about the boot process on an ARMv8 machine (e.g. > the Nexus 9), to bootstrap PilOS on it. > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: Booting PilOS
Hi me, On Sat, Oct 31, 2015 at 04:48:19PM -0400, me wrote: > Hello list. I've been following the pilOS progress and very interested in > running picolisp on bare metal. > > After following the instructions my exploration was halted shortly after > booting. "Welcome to pilOS!" line followed by "Error 9" whatever that is. Hmm, in fact there are no such messages ;) If it was "Loading PilOS" first, and then "READ ERROR 09", it is "DMA crossed 64K boundary" (http://www.bioscentral.com/misc/biosint13.htm). This probably means that the BIOS is not able to load more than 64K bytes. > Some other possible platforms to explore may be the OpenSPARC T2 (64-Bit, > Gpl2 licensed, SoC) or perhaps RISC-V which is a 64-bit BSD licensed SoC on > an FPGA for a fully open OS running on a fully open processor. While I'm > not sure how to convert existing assembly code to these architectures I'm > willing to help however possible to create a picolisp all the way down > computer. I would recommend to wait a little more until the ARMv8 (arm64) port of PicoLisp is ready. I'm currently testing on a Nexus 9 tablet. Arm64 seems to be the best architecture for pil64 so far. Sparc CPUs are not supported, and will probably never be. There are simply not many people wanting to use pil on a sparc, I suppose. And porting to a new architecture is a huge task, the arm64 port took several weeks of my spare time already. > No matter what happens I'm excited for pilOS and picolisp, thanks for the > excellent language Alex and everyone else's efforts as well! Thank you! If anybody really wants to delve into it, I would be glad if I could get information about the boot process on an ARMv8 machine (e.g. the Nexus 9), to bootstrap PilOS on it. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hello list. I've been following the pilOS progress and very interested in running picolisp on bare metal. After following the instructions my exploration was halted shortly after booting. "Welcome to pilOS!" line followed by "Error 9" whatever that is. This was on an Asus C300MA Chromebook, dual core celeron recognized as 64-bit, removed the write protect screw and installed Jon Lewis' BIOS, ultimately installing Manjaro GNU/Linux onto. Some other possible platforms to explore may be the OpenSPARC T2 (64-Bit, Gpl2 licensed, SoC) or perhaps RISC-V which is a 64-bit BSD licensed SoC on an FPGA for a fully open OS running on a fully open processor. While I'm not sure how to convert existing assembly code to these architectures I'm willing to help however possible to create a picolisp all the way down computer. No matter what happens I'm excited for pilOS and picolisp, thanks for the excellent language Alex and everyone else's efforts as well! On Jul 10, 2015 1:37 PM, "Alexander Burger" wrote: > On Fri, Jul 10, 2015 at 07:03:28PM +0200, Alexander Burger wrote: > > > What could PilOS be used for? > > ... > > And of course it represents the essence of PicoLisp: Being totally in > control, and knowing every single machine instruction in your machine > personally. > > This thrill alone was worth the effort :) > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS on 32-bit Arm Cortex-A9
Hi Robert, > I have a few TV sticks laying around running Android, but they have a > microSD slot, which you can boot a Linux image from. I am thinking on > learning ARM programming, since so many IOT devices, small netbooks and > tablets use these processors. How hard would it be to turn the work on > PilOS into a 32-bit PicoLisp running on specifically an ARM Cortex-A9 dual > core with a Mali400 GPU? PilOS is strictly 64-bit. It won't run on a 32-bit architecture. I would take miniPicoLisp. It can also be built as a stand-alone embedded system, see http://picolisp.com/wiki/?miniCodeROM > A bootable microSD image for the TV stick. Am I > biting off way too much here? How hard would implementing networking be, as > there is none on the 64-bit PilOS right now. Thanks! The same challenge you would have on mini :) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
PilOS on 32-bit Arm Cortex-A9
I have a few TV sticks laying around running Android, but they have a microSD slot, which you can boot a Linux image from. I am thinking on learning ARM programming, since so many IOT devices, small netbooks and tablets use these processors. How hard would it be to turn the work on PilOS into a 32-bit PicoLisp running on specifically an ARM Cortex-A9 dual core with a Mali400 GPU? A bootable microSD image for the TV stick. Am I biting off way too much here? How hard would implementing networking be, as there is none on the 64-bit PilOS right now. Thanks! Rob
Re: Possible host for PilOS
Hi Geo, > Oh! indeed that would be nice! so what's the hindrance for this goal? 1. I have no hardware to test (and on qemu Debian doesn't install yet on ARMv8). 2. It is a lot of work. > also, is there a port for MIPS64? No. Only x86-64 and Ppc64 so far. > ^^And yes i know its German for apple Yeah, I know you know :) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Possible host for PilOS
Hi Rob, > How about the Qualcomm DragonBoard? It's a 4 core 64 bit beast. You mean e.g. DragonBoard 410? Looks very good! ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Possible host for PilOS
I will hope and look for a 64bit home for PilOS in the hardware world! How about the Qualcomm DragonBoard? It's a 4 core 64 bit beast. Rob On Tue, Aug 4, 2015 at 6:07 PM, Alexander Burger wrote: > On Tue, Aug 04, 2015 at 09:40:18AM +, George Orais wrote: > > > Not just "prefer" ... There is no way to run PilOS on 32-bits. > > Besides> the fact that there is no ARM port yet. > > > Ah yes coz PilOS is fully based on pil64. Ah you mean there is no ARM > > port of the pil32 yet right? i thought someone here has successfuly > > install picolisp on an ARM device? or its not enough to consider as ARM > > port? > > Nono, there are plenty of ARM installations on pil32. I have it even > running on my Kobo E-Book reader. Just did an apt-get install picolisp > > I meant ARMv8 of course :) > > > > > > (A P F E L) = A Portable For Every Lispers(A P F E L) = A Platform For > Every Lispers(A P F E L) = A Platform For Embedded Lisp(A P F E L) = A > Playground For Every Lispers(A P F E L) = A Playground For Embedded Lisp(A > P F E L) = Alex Platform For Embedded Lisp(A P F E L) = Alex Platform For > Every Lispers(A P F E L) = Alex Playground For Embedded Lisp(A P F E L) = > Abu's Platform For Embedded Lisp(A P F E L) = Abu's Platform For Every > Lispers(A P F E L) = Abu's Playground For Embedded Lisp > > Hehe, I see. I thought you meant it as a pun on that company. > "Apfel" is German for "Apple". > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: Possible host for PilOS
> I meant ARMv8 of course :) Oh! indeed that would be nice! so what's the hindrance for this goal? also, is there a port for MIPS64? i plan to do it on my SGI Octane but maybe later after APFEL is done ;) > Hehe, I see. I thought you meant it as a pun on that company.> "Apfel" is > German for "Apple". hehe actually its the hidden agenda for this name, its a pun for two priducts: Apple and Raspberry Pi ^^And yes i know its German for apple ;) On Tuesday, August 4, 2015 6:14 PM, Alexander Burger wrote: On Tue, Aug 04, 2015 at 09:40:18AM +, George Orais wrote: > > Not just "prefer" ... There is no way to run PilOS on 32-bits. > Besides> the fact that there is no ARM port yet. > Ah yes coz PilOS is fully based on pil64. Ah you mean there is no ARM > port of the pil32 yet right? i thought someone here has successfuly > install picolisp on an ARM device? or its not enough to consider as ARM > port? Nono, there are plenty of ARM installations on pil32. I have it even running on my Kobo E-Book reader. Just did an apt-get install picolisp I meant ARMv8 of course :) > (A P F E L) = A Portable For Every Lispers(A P F E L) = A Platform For Every > Lispers(A P F E L) = A Platform For Embedded Lisp(A P F E L) = A Playground > For Every Lispers(A P F E L) = A Playground For Embedded Lisp(A P F E L) = > Alex Platform For Embedded Lisp(A P F E L) = Alex Platform For Every > Lispers(A P F E L) = Alex Playground For Embedded Lisp(A P F E L) = Abu's > Platform For Embedded Lisp(A P F E L) = Abu's Platform For Every Lispers(A P > F E L) = Abu's Playground For Embedded Lisp Hehe, I see. I thought you meant it as a pun on that company. "Apfel" is German for "Apple". ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Possible host for PilOS
On Tue, Aug 04, 2015 at 09:40:18AM +, George Orais wrote: > > Not just "prefer" ... There is no way to run PilOS on 32-bits. > Besides> the fact that there is no ARM port yet. > Ah yes coz PilOS is fully based on pil64. Ah you mean there is no ARM > port of the pil32 yet right? i thought someone here has successfuly > install picolisp on an ARM device? or its not enough to consider as ARM > port? Nono, there are plenty of ARM installations on pil32. I have it even running on my Kobo E-Book reader. Just did an apt-get install picolisp I meant ARMv8 of course :) > (A P F E L) = A Portable For Every Lispers(A P F E L) = A Platform For Every > Lispers(A P F E L) = A Platform For Embedded Lisp(A P F E L) = A Playground > For Every Lispers(A P F E L) = A Playground For Embedded Lisp(A P F E L) = > Alex Platform For Embedded Lisp(A P F E L) = Alex Platform For Every > Lispers(A P F E L) = Alex Playground For Embedded Lisp(A P F E L) = Abu's > Platform For Embedded Lisp(A P F E L) = Abu's Platform For Every Lispers(A P > F E L) = Abu's Playground For Embedded Lisp Hehe, I see. I thought you meant it as a pun on that company. "Apfel" is German for "Apple". ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Possible host for PilOS
Hi Alex, > Not just "prefer" ... There is no way to run PilOS on 32-bits. Besides> the > fact that there is no ARM port yet. Ah yes coz PilOS is fully based on pil64. Ah you mean there is no ARM port of the pil32 yet right? i thought someone here has successfuly install picolisp on an ARM device? or its not enough to consider as ARM port? > Cool! Thanks! more cooler is its using unconventional chips compared to other kits:* FRAM = better compared to EEPROM* Asyn SRAM = better and easier then SDRAM* NOR Flash ROM = better and easier than NAND Flash ROM found on SD cards I know these are bit pricey and has lower capacity? But the reason is i handpicked them so that its tailored to be exactly same as what we implemented on the verilog emulator, this will help a faster turn around to finish the first prototype. Once we got this working, we can strip down and optimiz it from there and that's when the crowd-funding comes in.. The current specs for this board is:* 64bit pilMCU (using Altera FPGA)* 256KB FRAM for microcode* 16MB Async SRAM for main RAM, upgradable to 32MB* 512MB NOR Flash for main storage, upgradable to 1GB* Compatible with Waveshare 7" LCD + Capacitive Touch* Compatible with Waveshare VGA + PS2 module* Compatible with Waveshare Wifi module* Comaptible with Waveshare Ethernet module* GPIO's, I2C, SPI, UART interfaces* BCD to 7-seg and buttons* MCU is programmable via UART, so any computer with terminal emulator can program this board without installing any IDE. Even the old workstations (SUN, SGI, IBM) can also develop with this board because of UART. Later part, even smartphones or smartpads can directly program this via BLE in which a BLE module is connected to act as UART. > Hmm, no idea ... ;) hehe no attempts? ok ill just spill it out :) actually i have plenty of options so you and everyone can help me which is better: (A P F E L) = A Portable For Every Lispers(A P F E L) = A Platform For Every Lispers(A P F E L) = A Platform For Embedded Lisp(A P F E L) = A Playground For Every Lispers(A P F E L) = A Playground For Embedded Lisp(A P F E L) = Alex Platform For Embedded Lisp(A P F E L) = Alex Platform For Every Lispers(A P F E L) = Alex Playground For Embedded Lisp(A P F E L) = Abu's Platform For Embedded Lisp(A P F E L) = Abu's Platform For Every Lispers(A P F E L) = Abu's Playground For Embedded Lisp And some older ideas i got: FLEK = for lispers embedded kitPIL = platform in lispPLIC = Pico Lisp in Chip (pilMCU alternative name)PLOC = Pico Lisp on Chip (pilMCU alternative name)PoC = Picolisp on Chip (pilMCU alternative name) Cheers! BR,geo On Tuesday, August 4, 2015 1:28 PM, Alexander Burger wrote: Hi Robert, Geo, indeed, an interesting piece of hardware! > But its an ARM Cortex M4 and from what i remember Alex would prefer to > have it on a 64bit machine as much as possible? Not just "prefer" ... There is no way to run PilOS on 32-bits. Besides the fact that there is no ARM port yet. > Anyway don't worry coz i already got all the ingredients for the > pilMCU evaluation kit? Got it from Digikey last week and now I'm > currently layout the PCB which is time consuming esp if packages used > are for SMD.. but its a working progress compared to past months. Cool! > Can't hold it but ok the name for the pilMCU evaluation board that I'm > building is called "A.P.F.E.L." anyone can guess the meaning? :) Hmm, no idea ... ;) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Possible host for PilOS
Hi Robert, Geo, indeed, an interesting piece of hardware! > But its an ARM Cortex M4 and from what i remember Alex would prefer to > have it on a 64bit machine as much as possible? Not just "prefer" ... There is no way to run PilOS on 32-bits. Besides the fact that there is no ARM port yet. > Anyway don't worry coz i already got all the ingredients for the > pilMCU evaluation kit? Got it from Digikey last week and now I'm > currently layout the PCB which is time consuming esp if packages used > are for SMD.. but its a working progress compared to past months. Cool! > Can't hold it but ok the name for the pilMCU evaluation board that I'm > building is called "A.P.F.E.L." anyone can guess the meaning? :) Hmm, no idea ... ;) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Possible host for PilOS
Hi Robert, Nice find! And good point with the name :) But its an ARM Cortex M4 and from what i remember Alex would prefer to have it on a 64bit machine as much as possible? Anyway don't worry coz i already got all the ingredients for the pilMCU evaluation kit? Got it from Digikey last week and now I'm currently layout the PCB which is time consuming esp if packages used are for SMD.. but its a working progress compared to past months. The design is based from the Waveshare hardware so that i can use their modular peripherals which is almost like Arduino... Can't hold it but ok the name for the pilMCU evaluation board that I'm building is called "A.P.F.E.L." anyone can guess the meaning? :) BR,Geo On Tuesday, August 4, 2015 11:28 AM, Robert Herman wrote: I was checking out Espruino. It has a jumper to 'Boot to' where you can change the firmware. Do you think it would be possible to get PilOS running on this? It is ARM, and has a lot of convenience to it: USB A, LEDs, button, 22 GPIO, and best of all it's named Pico! http://www.espruino.com/Pico Rob
Possible host for PilOS
I was checking out Espruino. It has a jumper to 'Boot to' where you can change the firmware. Do you think it would be possible to get PilOS running on this? It is ARM, and has a lot of convenience to it: USB A, LEDs, button, 22 GPIO, and best of all it's named Pico! http://www.espruino.com/Pico Rob
Re: RcSim Article (Was: PilOS - File I/O and OpenGL)
Hi Rob, > I posted it on HN: https://news.ycombinator.com/item?id=9954773 Great! Thanks! :) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: RcSim Article (Was: PilOS - File I/O and OpenGL)
Yes, thank you very much, Alex! I posted it on HN: https://news.ycombinator.com/item?id=9954773 I am amazed at what you have done and are doing with your creation! Rob On Mon, Jul 27, 2015 at 6:17 PM, wrote: > Great! Thanks Alex! > > - Original Message - > From: Alexander Burger [mailto:a...@software-lab.de] > To: picolisp@software-lab.de > Sent: Mon, 27 Jul 2015 11:24:07 +0200 > Subject: > > On Sat, Jul 25, 2015 at 11:13:55AM +0200, Alexander Burger wrote: > > There should really be an article about that in picolisp.com :( > > Done! :) > >http://picolisp.com/wiki/?rcsim > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe > >
RE: RcSim Article (Was: PilOS - File I/O and OpenGL)
Great! Thanks Alex! - Original Message - From: Alexander Burger [mailto:a...@software-lab.de] To: picolisp@software-lab.de Sent: Mon, 27 Jul 2015 11:24:07 +0200 Subject: On Sat, Jul 25, 2015 at 11:13:55AM +0200, Alexander Burger wrote: > There should really be an article about that in picolisp.com :( Done! :) http://picolisp.com/wiki/?rcsim ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
RcSim Article (Was: PilOS - File I/O and OpenGL)
On Sat, Jul 25, 2015 at 11:13:55AM +0200, Alexander Burger wrote: > There should really be an article about that in picolisp.com :( Done! :) http://picolisp.com/wiki/?rcsim ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS - File I/O and OpenGL
Hi Rob, > How would you even start to write a VGA driver/device in PicoLisp > or pil-assembly? Ha! I just found an old version of RcSim, from 1991, running on DOS, using 16-color VGA graphics (and also one using B/W CGA ;). I didn't remember at all that I had already implemented all that stuff back then. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS - File I/O and OpenGL
By 'above' I was referring to the thread above, where I was asking about pil-assembly, and you replied 'Lisp'. I was just clarifying for myself that it was PicoLisp you were referring to, and not Common Lisp, SBCL or otherwise. I would love to help with RC-Sim on PilOS if I had the experience and knowledge. Where could I start as a learning exercise? I am familiar with computer graphics and the math necessary to do it, but not PicoLisp. In the day, I did some 8-bit bit-banging, but I have no experience writing device drivers. How would you even start to write a VGA driver/device in PicoLisp or pil-assembly? Is the VM you have created for PilOS organized for the eventual 'layering' that is going to happen when these things need to be integrated? Very interesting... Rob On Sat, Jul 25, 2015 at 5:13 PM, Alexander Burger wrote: > Hi Rob, > > > I'll check those out. Is Lisp, PicoLisp or Common Lisp above? > > What do you mean with "above" here? > > > > > I am guessing RCSim is the RC simulator? I was not aware of it before > your > > Yes. Unfortunately, the README file is no longer part of the PicoLisp > distribution. > > Let me put some excerpts here: > >It is all implemented within the PicoLisp system, so that no >additional libraries like OpenGL or GL4Java are needed. It may be >regarded as a proof of concept, because a flight simulator is one of >the least typical things to do in Lisp. > >The plane is similar to the German WW-I aircraft Fokker "D-VII" (and >a bit to the British Sopwith Camel ;-). Though the user's position is >that of a model plane's pilot (i.e. viewing the plane from a fixed >position), all parameters like dimensions, mass, engine power and >flight data are intended to be as close as possible to a "real" >Fokker D-VII. Unfortunately, some of these parameters are not known >exactly, but it is a fun project anyway, and I hope it comes close. > >You start it (pil64 only) as > > $ pil /usr/share/picolisp/misc/rcsim.l -main -go + > >This opens a new XWindow. Put it on your desktop into a position >where you can *also* see the XTerm where you started it from. > >Set the keyboard focus to the XTerm, i.e. where you now have a ':' >REPL prompt. > >The simulator is controlled by the following 10 keys: > >- The cursor (arrow) keys UP and DOWN control the elevator >- The LEFT and RIGHT cursor keys control the combined rudder/ailerons >- The HOME key sets full throttle >- PAGE UP/DOWN increase/decrease the throttle >- The END key turns the engine off >- INS/DEL zoom in/out > >For a first flight, just hit the HOME key as the plane sits waiting >on the runway, and watch it accelerate. After some time, when it >starts to jump a bit nervously, give a little up-elevator (the DOWN >arrow key) to gain height. Then hit the PAGE DOWN key once or twice >to decrease the throttle, and cautiously experiment with with the >arrow keys. > > There should really be an article about that in picolisp.com :( > > > > reference. Hobby, or did you contribute to it? That would be a great app > to > > Both (hobby, and I wrote it ;) > > > > port covering graphics, math, realtime (soft realtime?) and all of the > > logistics that entails. Would you stick with z3d.l or create something > > wholly new? Sounds exciting. > > Yes, "lib/z3d.l" would have to be rewritten. > > But that's by far not the problem. Rather trivial. The REAL problem is > to get a decent Video mode (SVGA?, VESA?, XGA?) working on PilOS. Seems > to be a lot of trouble. See e.g. > >http://wiki.osdev.org/How_do_I_set_a_graphics_mode > http://wiki.osdev.org/Getting_VBE_Mode_Info >http://wiki.osdev.org/VGA_Hardware >http://wiki.osdev.org/VGA_Resources > > Here we surely have the same problems as with the BIOS compatibility > issues during boot. Supporting a variety of graphics cards (simulated or > real) is a nightmare. And sticking with the minimal standard VGA might > be easier, but then resolution and color depth are not satisfactory. > > Anybody willing to help? > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS - File I/O and OpenGL
Hi Rob, > I'll check those out. Is Lisp, PicoLisp or Common Lisp above? What do you mean with "above" here? > I am guessing RCSim is the RC simulator? I was not aware of it before your Yes. Unfortunately, the README file is no longer part of the PicoLisp distribution. Let me put some excerpts here: It is all implemented within the PicoLisp system, so that no additional libraries like OpenGL or GL4Java are needed. It may be regarded as a proof of concept, because a flight simulator is one of the least typical things to do in Lisp. The plane is similar to the German WW-I aircraft Fokker "D-VII" (and a bit to the British Sopwith Camel ;-). Though the user's position is that of a model plane's pilot (i.e. viewing the plane from a fixed position), all parameters like dimensions, mass, engine power and flight data are intended to be as close as possible to a "real" Fokker D-VII. Unfortunately, some of these parameters are not known exactly, but it is a fun project anyway, and I hope it comes close. You start it (pil64 only) as $ pil /usr/share/picolisp/misc/rcsim.l -main -go + This opens a new XWindow. Put it on your desktop into a position where you can *also* see the XTerm where you started it from. Set the keyboard focus to the XTerm, i.e. where you now have a ':' REPL prompt. The simulator is controlled by the following 10 keys: - The cursor (arrow) keys UP and DOWN control the elevator - The LEFT and RIGHT cursor keys control the combined rudder/ailerons - The HOME key sets full throttle - PAGE UP/DOWN increase/decrease the throttle - The END key turns the engine off - INS/DEL zoom in/out For a first flight, just hit the HOME key as the plane sits waiting on the runway, and watch it accelerate. After some time, when it starts to jump a bit nervously, give a little up-elevator (the DOWN arrow key) to gain height. Then hit the PAGE DOWN key once or twice to decrease the throttle, and cautiously experiment with with the arrow keys. There should really be an article about that in picolisp.com :( > reference. Hobby, or did you contribute to it? That would be a great app to Both (hobby, and I wrote it ;) > port covering graphics, math, realtime (soft realtime?) and all of the > logistics that entails. Would you stick with z3d.l or create something > wholly new? Sounds exciting. Yes, "lib/z3d.l" would have to be rewritten. But that's by far not the problem. Rather trivial. The REAL problem is to get a decent Video mode (SVGA?, VESA?, XGA?) working on PilOS. Seems to be a lot of trouble. See e.g. http://wiki.osdev.org/How_do_I_set_a_graphics_mode http://wiki.osdev.org/Getting_VBE_Mode_Info http://wiki.osdev.org/VGA_Hardware http://wiki.osdev.org/VGA_Resources Here we surely have the same problems as with the BIOS compatibility issues during boot. Supporting a variety of graphics cards (simulated or real) is a nightmare. And sticking with the minimal standard VGA might be easier, but then resolution and color depth are not satisfactory. Anybody willing to help? ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS - File I/O and OpenGL
I'll check those out. Is Lisp, PicoLisp or Common Lisp above? I am guessing RCSim is the RC simulator? I was not aware of it before your reference. Hobby, or did you contribute to it? That would be a great app to port covering graphics, math, realtime (soft realtime?) and all of the logistics that entails. Would you stick with z3d.l or create something wholly new? Sounds exciting. I need to pick the small bits for now and learn. Rob On Sat, Jul 25, 2015 at 2:37 AM, Alexander Burger wrote: > Hi Rob, > > > I'll keep hacking away at it, since the payoffs are big for me from a > > learning perspective. > > Good :) > > And you brought me to the idea of porting RcSim :) I think I'll > investigate that more. This should be the first real "application" > in PilOS. > > > > When you say "@lib/z3d.l" is in C, if I wanted to learn > > how to build upon PilOS, would it be preferable to use pil-assembly or > Lisp > > (PicoLisp, I assume)? > > I would start on the Lisp level. Only low-level and time-critical > parts need to be done in assembly. > > > > Can I learn pil-assembly from the source files, or do > > you have a reference somewhere? > > The only reference is in "doc64/asm". It describes the virtual PicoLisp > machine and its instruction set. The ultimate documentation are the > sources in "src64/*.l" and (as a modification of those) in > "pilos/src/*.l". > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS - File I/O and OpenGL
Hi Rob, > I'll keep hacking away at it, since the payoffs are big for me from a > learning perspective. Good :) And you brought me to the idea of porting RcSim :) I think I'll investigate that more. This should be the first real "application" in PilOS. > When you say "@lib/z3d.l" is in C, if I wanted to learn > how to build upon PilOS, would it be preferable to use pil-assembly or Lisp > (PicoLisp, I assume)? I would start on the Lisp level. Only low-level and time-critical parts need to be done in assembly. > Can I learn pil-assembly from the source files, or do > you have a reference somewhere? The only reference is in "doc64/asm". It describes the virtual PicoLisp machine and its instruction set. The ultimate documentation are the sources in "src64/*.l" and (as a modification of those) in "pilos/src/*.l". ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS - File I/O and OpenGL
I'm starting to understand what PilOS really is, thanks to your patient explanations. I'll keep hacking away at it, since the payoffs are big for me from a learning perspective. I don't need a typical system - gcc, clibs, or a gui. I was trying to follow some of the rosetta code examples, and that's when I started to see what's in PilOS. When you say "@lib/z3d.l" is in C, if I wanted to learn how to build upon PilOS, would it be preferable to use pil-assembly or Lisp (PicoLisp, I assume)? Can I learn pil-assembly from the source files, or do you have a reference somewhere? Thanks again! Rob On Fri, Jul 24, 2015 at 11:08 PM, Alexander Burger wrote: > On Fri, Jul 24, 2015 at 04:30:53PM +0200, Alexander Burger wrote: > > So you must first port X11 and OpenGL to PilOS. A surely interesting > > task ;) > > .. especially as there is no C compiler yet (and probably also not in > the future). So it must be done in Lisp and/or pil-assembly. > > > Of course a full X11 is not needed. > > A possible first step might be getting the flight simulator (in > "misc/rcsim.l") up and running. The only library it uses is "@lib/z3d.l" > which - though in C - does no more than writing single pixels into a > window. This could perhaps be rewritten to write those pixels directly > to the frame buffer. > > Still a daunting task ... ;) > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS - File I/O and OpenGL
On Fri, Jul 24, 2015 at 04:30:53PM +0200, Alexander Burger wrote: > So you must first port X11 and OpenGL to PilOS. A surely interesting > task ;) .. especially as there is no C compiler yet (and probably also not in the future). So it must be done in Lisp and/or pil-assembly. Of course a full X11 is not needed. A possible first step might be getting the flight simulator (in "misc/rcsim.l") up and running. The only library it uses is "@lib/z3d.l" which - though in C - does no more than writing single pixels into a window. This could perhaps be rewritten to write those pixels directly to the frame buffer. Still a daunting task ... ;) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS - File I/O and OpenGL
Hi Robert, > I tried saving a file (3dtext.l) to the misc directory in PilOS, but I > could not see it when using the (dir "misc"). I am suspecting I need to > write it and save it from within PilOS? You can put a file into a directory while building the PilOS image: Enter the path in "pilos/lib/init.l" into the global *IniFiles, and create that file in "pilos/init/". All files which have a 'T' in *IniFiles are automatically 'loaded' when PilOS boots. You may also add it to 'initFiles' in "pilos/Makefile", but this is needed only for the (temporal) dependency. And, yes, you can also create a file at runtime, using 'out' just like in normal PicoLisp. : (out "my/path/file.l" (println ...) (println ...) ..) > How to add a library to PilOS such as the OpenGL one that is native to the > 64bit PicoLisp distribution? Do you have to add it to the source and > recreate the img file? This is rather meaningless. You can't execute a library written for Linux (or any other operating system) under PilOS. For example, you would first need the whole X11 system. Then you would need a loader program which reads those libraries into memory, relocates them, and links them with other libraries. And even then it would not work, as the calling conventions, register usage (the ABI) are different. So you must first port X11 and OpenGL to PilOS. A surely interesting task ;) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
PilOS - File I/O and OpenGL
I tried saving a file (3dtext.l) to the misc directory in PilOS, but I could not see it when using the (dir "misc"). I am suspecting I need to write it and save it from within PilOS? How to add a library to PilOS such as the OpenGL one that is native to the 64bit PicoLisp distribution? Do you have to add it to the source and recreate the img file? Regards, Rob
Re: PilOS
Good to hear! Happy to help. On Thu, Jul 23, 2015 at 11:21 AM, Robert Herman wrote: > Joe, > > Thanks! That did it. I was trying different versions of Qemu sequentially, > and hopping around, and could not get one past that 09 error. I have no > regrets of jumping down the rabbit hole though, since I have learned heaps > about DMA and qemu, and I have even started to look into Alex's code. Now, > back to PilOS!!! > > Rob > > On Tue, Jul 21, 2015 at 7:18 PM, Joe Bogner wrote: >> >> Hi Rob, >> >> I'm using qemu-2.0.9.1 on win64 with pilos and it works fine >> >> I downloaded it from here: >> >> http://qemu.weilnetz.de/w64/qemu-w64-setup-20140715.exe >> >> Later versions, including qemu-w64-setup-20150503.exe did not run for me >> >> Hope that helps >> >> >> On Mon, Jul 20, 2015 at 6:10 AM, Robert Herman >> wrote: >> > I tried several, and when I finally tried version 2.2.90 for windows 64 >> > bit, >> > It went past that error and went to a 'READ ERROR 09' >> > Is that a 09h Attempt to DMA over 64kb boundary using the same Wiki >> > reference you supplied in a previous posting? >> > How can I fix it or keep moving on? Where do I look in the source to >> > troubleshoot this myself? Exciting fun anyhow, so no complaints here! >> > >> > >> > Rob >> > >> > On Mon, Jul 20, 2015 at 1:32 PM, Alexander Burger >> > wrote: >> >> >> >> Hi Robert, >> >> >> >> > First, I would like to donate some money anyway, seeing how much fun >> >> > I >> >> > have >> >> > had with PicoLisp and PilOS. >> >> >> >> Thanks, that's very nice! But don't worry, that's not what I'm looking >> >> for. I need some stable, long-term project(s) ;) >> >> >> >> >> >> > Second, I get a 'Guest has not initialized the display (yet).' when >> >> > trying >> >> > to run PilOS in qemu on my i5 Windows 8.1 64bit machine. Any steps I >> >> > am >> >> > missing? I am a qemu newbie, and PilOS newbie. >> >> >> >> I did a short search on the web, and it seems this error appears in >> >> qemu >> >> in other situations too. Not only on Windows, but also on other guest >> >> operating systems. >> >> >> >> I have no idea what might be the reason. PilOS simply uses the standard >> >> VIDEO memory (VGA) on hardware address 0xB8000. >> >> >> >> Can you try another version of qemu? >> >> >> >> ♪♫ Alex >> >> -- >> >> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >> > >> > >> -- >> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subjectUnsubscribe > > -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
Joe, Thanks! That did it. I was trying different versions of Qemu sequentially, and hopping around, and could not get one past that 09 error. I have no regrets of jumping down the rabbit hole though, since I have learned heaps about DMA and qemu, and I have even started to look into Alex's code. Now, back to PilOS!!! Rob On Tue, Jul 21, 2015 at 7:18 PM, Joe Bogner wrote: > Hi Rob, > > I'm using qemu-2.0.9.1 on win64 with pilos and it works fine > > I downloaded it from here: > > http://qemu.weilnetz.de/w64/qemu-w64-setup-20140715.exe > > Later versions, including qemu-w64-setup-20150503.exe did not run for me > > Hope that helps > > > On Mon, Jul 20, 2015 at 6:10 AM, Robert Herman > wrote: > > I tried several, and when I finally tried version 2.2.90 for windows 64 > bit, > > It went past that error and went to a 'READ ERROR 09' > > Is that a 09h Attempt to DMA over 64kb boundary using the same Wiki > > reference you supplied in a previous posting? > > How can I fix it or keep moving on? Where do I look in the source to > > troubleshoot this myself? Exciting fun anyhow, so no complaints here! > > > > > > Rob > > > > On Mon, Jul 20, 2015 at 1:32 PM, Alexander Burger > > wrote: > >> > >> Hi Robert, > >> > >> > First, I would like to donate some money anyway, seeing how much fun I > >> > have > >> > had with PicoLisp and PilOS. > >> > >> Thanks, that's very nice! But don't worry, that's not what I'm looking > >> for. I need some stable, long-term project(s) ;) > >> > >> > >> > Second, I get a 'Guest has not initialized the display (yet).' when > >> > trying > >> > to run PilOS in qemu on my i5 Windows 8.1 64bit machine. Any steps I > am > >> > missing? I am a qemu newbie, and PilOS newbie. > >> > >> I did a short search on the web, and it seems this error appears in qemu > >> in other situations too. Not only on Windows, but also on other guest > >> operating systems. > >> > >> I have no idea what might be the reason. PilOS simply uses the standard > >> VIDEO memory (VGA) on hardware address 0xB8000. > >> > >> Can you try another version of qemu? > >> > >> ♪♫ Alex > >> -- > >> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe > > > > > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subjectUnsubscribe >
Re: PilOS
Hi Rob, I'm using qemu-2.0.9.1 on win64 with pilos and it works fine I downloaded it from here: http://qemu.weilnetz.de/w64/qemu-w64-setup-20140715.exe Later versions, including qemu-w64-setup-20150503.exe did not run for me Hope that helps On Mon, Jul 20, 2015 at 6:10 AM, Robert Herman wrote: > I tried several, and when I finally tried version 2.2.90 for windows 64 bit, > It went past that error and went to a 'READ ERROR 09' > Is that a 09h Attempt to DMA over 64kb boundary using the same Wiki > reference you supplied in a previous posting? > How can I fix it or keep moving on? Where do I look in the source to > troubleshoot this myself? Exciting fun anyhow, so no complaints here! > > > Rob > > On Mon, Jul 20, 2015 at 1:32 PM, Alexander Burger > wrote: >> >> Hi Robert, >> >> > First, I would like to donate some money anyway, seeing how much fun I >> > have >> > had with PicoLisp and PilOS. >> >> Thanks, that's very nice! But don't worry, that's not what I'm looking >> for. I need some stable, long-term project(s) ;) >> >> >> > Second, I get a 'Guest has not initialized the display (yet).' when >> > trying >> > to run PilOS in qemu on my i5 Windows 8.1 64bit machine. Any steps I am >> > missing? I am a qemu newbie, and PilOS newbie. >> >> I did a short search on the web, and it seems this error appears in qemu >> in other situations too. Not only on Windows, but also on other guest >> operating systems. >> >> I have no idea what might be the reason. PilOS simply uses the standard >> VIDEO memory (VGA) on hardware address 0xB8000. >> >> Can you try another version of qemu? >> >> ♪♫ Alex >> -- >> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe > > -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
On Tue, Jul 21, 2015 at 03:26:03PM +0800, Robert Herman wrote: > Thanks for the boost, Alex. I'll do some work on my own now, and get back > to you. I am going to try more qemu versions, then I am going to try > modifying or rewriting the bios file in qemu to see if I can bypass this > limit. Yes, but still strange why qemu differs so much. I never had any problem, and, it seems, other people too. > I guess it is trying to emulate the x86-64 architecture to the bit, > so maybe as a vm the 64kb limit is not needed? If the error diagnosis is correct, it is only the DMA transfer by this special BIOS which is limited to 64 KiB. And - I suspect - if it fails so early, the following code will give problems too ;) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
Thanks for the boost, Alex. I'll do some work on my own now, and get back to you. I am going to try more qemu versions, then I am going to try modifying or rewriting the bios file in qemu to see if I can bypass this limit. I guess it is trying to emulate the x86-64 architecture to the bit, so maybe as a vm the 64kb limit is not needed? Another thought I had was designing my own hardware in the vm along the lines of PilMCU. I am by no means qualified to do so (yet!), but that's the fun isn't it? 64bit is the kicker, since I have some 32 bit boards lying around, and an FPGA proto board. Rob On Mon, Jul 20, 2015 at 9:26 PM, Alexander Burger wrote: > On Mon, Jul 20, 2015 at 08:30:01PM +0800, Robert Herman wrote: > > Is there a way to change a qemu bios file config? > > The man page of qemu-system says "QEMU uses the PC BIOS from the Seabios > project and the Plex86/Bochs LGPL VGA BIOS". But there is also a > >-bios file > > option. I haven't tried. > > > > Could I change beg.l to > > load it in segments, or would it still require a 670kb read to put it > > together again? > > This is surely possible, but quite tedious. You would have to modify the > 'DAP' structure (starting at line 87) for varying "Start sector"s, > "Offset"s and smaller "Number of sectors" values, and call int 13h > repeatedly. So you could read it all in e.g. 11 pieces, each <= 64 KiB. > Perhaps not worth the effort ... > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS
On Mon, Jul 20, 2015 at 08:30:01PM +0800, Robert Herman wrote: > Is there a way to change a qemu bios file config? The man page of qemu-system says "QEMU uses the PC BIOS from the Seabios project and the Plex86/Bochs LGPL VGA BIOS". But there is also a -bios file option. I haven't tried. > Could I change beg.l to > load it in segments, or would it still require a 670kb read to put it > together again? This is surely possible, but quite tedious. You would have to modify the 'DAP' structure (starting at line 87) for varying "Start sector"s, "Offset"s and smaller "Number of sectors" values, and call int 13h repeatedly. So you could read it all in e.g. 11 pieces, each <= 64 KiB. Perhaps not worth the effort ... ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
Wow, thanks. It's trying to read in the entire thing 670kb of PicoLisp. I'll try other versions of qemu. There are a few between this one and the others that failed. Is there a way to change a qemu bios file config? Could I change beg.l to load it in segments, or would it still require a 670kb read to put it together again? Thanks. Rob On Mon, Jul 20, 2015 at 6:33 PM, Alexander Burger wrote: > Hi Rob, > > > I tried several, and when I finally tried version 2.2.90 for windows 64 > > bit, It went past that error and went to a 'READ ERROR 09' > > Is that a 09h Attempt to DMA over 64kb boundary using the same Wiki > > reference you supplied in a previous posting? > > Yes, indeed. And interesting: This seems to be the first time that error > number 09 appears. > > > > How can I fix it or keep moving on? Where do I look in the source to > > troubleshoot this myself? Exciting fun anyhow, so no complaints here! > > The place where this happens is "pilos/x86-64/beg.l", line 26 ff > >mov $DAP, %si # Disk Address Packet >mov $0x42, %ah# Extended Read Sectors >int $0x13 # Drive interrupt >jc readError > > This is the standard BIOS call to read a given number of sectors from a > drive. > > > https://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D43h:_Extended_Write_Sectors_to_Drive > > This above error is correct, in that indeed more than 64 KiB are being > read from the drive (the size of PilOS is 670 KiB currently). > > So the BIOS which is emulated in your version of Qemu somehow cannot > handle it. Unfortunately, I don't know of any other way, except from > writing your own "BIOS". > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS
Hi Rob, > I tried several, and when I finally tried version 2.2.90 for windows 64 > bit, It went past that error and went to a 'READ ERROR 09' > Is that a 09h Attempt to DMA over 64kb boundary using the same Wiki > reference you supplied in a previous posting? Yes, indeed. And interesting: This seems to be the first time that error number 09 appears. > How can I fix it or keep moving on? Where do I look in the source to > troubleshoot this myself? Exciting fun anyhow, so no complaints here! The place where this happens is "pilos/x86-64/beg.l", line 26 ff mov $DAP, %si # Disk Address Packet mov $0x42, %ah# Extended Read Sectors int $0x13 # Drive interrupt jc readError This is the standard BIOS call to read a given number of sectors from a drive. https://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D43h:_Extended_Write_Sectors_to_Drive This above error is correct, in that indeed more than 64 KiB are being read from the drive (the size of PilOS is 670 KiB currently). So the BIOS which is emulated in your version of Qemu somehow cannot handle it. Unfortunately, I don't know of any other way, except from writing your own "BIOS". ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
I tried several, and when I finally tried version 2.2.90 for windows 64 bit, It went past that error and went to a 'READ ERROR 09' Is that a 09h Attempt to DMA over 64kb boundary using the same Wiki reference you supplied in a previous posting? How can I fix it or keep moving on? Where do I look in the source to troubleshoot this myself? Exciting fun anyhow, so no complaints here! Rob On Mon, Jul 20, 2015 at 1:32 PM, Alexander Burger wrote: > Hi Robert, > > > First, I would like to donate some money anyway, seeing how much fun I > have > > had with PicoLisp and PilOS. > > Thanks, that's very nice! But don't worry, that's not what I'm looking > for. I need some stable, long-term project(s) ;) > > > > Second, I get a 'Guest has not initialized the display (yet).' when > trying > > to run PilOS in qemu on my i5 Windows 8.1 64bit machine. Any steps I am > > missing? I am a qemu newbie, and PilOS newbie. > > I did a short search on the web, and it seems this error appears in qemu > in other situations too. Not only on Windows, but also on other guest > operating systems. > > I have no idea what might be the reason. PilOS simply uses the standard > VIDEO memory (VGA) on hardware address 0xB8000. > > Can you try another version of qemu? > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS
Hi Robert, > First, I would like to donate some money anyway, seeing how much fun I have > had with PicoLisp and PilOS. Thanks, that's very nice! But don't worry, that's not what I'm looking for. I need some stable, long-term project(s) ;) > Second, I get a 'Guest has not initialized the display (yet).' when trying > to run PilOS in qemu on my i5 Windows 8.1 64bit machine. Any steps I am > missing? I am a qemu newbie, and PilOS newbie. I did a short search on the web, and it seems this error appears in qemu in other situations too. Not only on Windows, but also on other guest operating systems. I have no idea what might be the reason. PilOS simply uses the standard VIDEO memory (VGA) on hardware address 0xB8000. Can you try another version of qemu? ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
Alex, First, I would like to donate some money anyway, seeing how much fun I have had with PicoLisp and PilOS. Second, I get a 'Guest has not initialized the display (yet).' when trying to run PilOS in qemu on my i5 Windows 8.1 64bit machine. Any steps I am missing? I am a qemu newbie, and PilOS newbie. I used the line from the PilOS page: qemu-system-x86_64..exe -m 4096 -ctrl-grab -no-reboot x86-64.img Great work! Rob On Thu, Jul 16, 2015 at 12:29 AM, Alexander Burger wrote: > On Wed, Jul 15, 2015 at 11:05:42AM -0400, Rick Lyman wrote: > > Which board would you like to start with? > > Suggestions? As I said, this is in the far future. And - as nobody is > going to pay for it - this will not be too soon, I'm afraid. > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS
On Wed, Jul 15, 2015 at 11:05:42AM -0400, Rick Lyman wrote: > Which board would you like to start with? Suggestions? As I said, this is in the far future. And - as nobody is going to pay for it - this will not be too soon, I'm afraid. -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS
Which board would you like to start with? On Wed, Jul 15, 2015 at 10:55 AM, Alexander Burger wrote: > Hi Rick, > > > >In the future, we might think of utilizing it in embedded systems > > > > Meaning ARM boards? > > Yes, this too. But first pil64 must be ported to ARMv8. This is on my > todo list since a long time, but I don't have the necessary hardware. > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilOS
Hi Rick, > >In the future, we might think of utilizing it in embedded systems > > Meaning ARM boards? Yes, this too. But first pil64 must be ported to ARMv8. This is on my todo list since a long time, but I don't have the necessary hardware. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
PilOS
Alex, >The PicoLisp Operating System >on standard PC hardware >In the future, we might think of utilizing it in embedded systems Meaning ARM boards? Thanks, -rl
Re: Booting PilOS
On Fri, Jul 10, 2015 at 07:03:28PM +0200, Alexander Burger wrote: > > What could PilOS be used for? > ... And of course it represents the essence of PicoLisp: Being totally in control, and knowing every single machine instruction in your machine personally. This thrill alone was worth the effort :) ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Rick, > > PilOS is complete so far Well, to be honest, not completely complete. The most interesting part is still missing, but that's not an OS-issue, but a matter of PicoLisp internals: Parallelize parts of the interpreter to employ multiple CPU cores. First will be the garbage collector. > What could PilOS be used for? On a PC it doesn't make much sense. There it is easier to build a bootable stick with Linux, e.g. with the Debian 'live-build' package. What I'm targeting for are high-end embedded systems (in the far future), with multi-core 64-bit CPUs, and perhaps lots of such machines (each with their local database) connected in a network. And also for tablets (for my own use, text-only without graphics). > Does it have any way of communicating with the outside world? Not currently, except for the USB-Stick. A dedicated/embedded system would simply use network-hardware. More infos at: http://picolisp.com/wiki/?PilOS ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Alex, > PilOS is complete so far What could PilOS be used for? Does it have any way of communicating with the outside world? (http://lwip.wikia.com/wiki/Porting_For_Bare_Metal) Any thoughts re: IOT: eg: http://www.adafruit.com/products/2112?gclid=Cj0KEQjw2v2sBRCazKGu3tSFz64BEiQAKIE1htXJRrxOaZQdrYYHh5qrwo0Ohob02GyUN_gCZMbxyPkaAhp68P8HAQ Thanks for the osdev.org link. Also, what about using containers? http://www.infoworld.com/article/2942721/linux/from-coreos-to-nano-micro-oses-strip-down-for-containers.html Thanks, -rl On Fri, Jul 10, 2015 at 10:24 AM, Alexander Burger wrote: > On Fri, Jul 10, 2015 at 09:55:30AM -0400, Rick Lyman wrote: > > May be useful: > > > > https://blog.netbsd.org/tnf/entry/an_internet_ready_os_from > > https://www.raspberrypi.org/forums/viewtopic.php?f=72&t=92579 > > > https://lse.epita.fr/lse-summer-week-2014/slides/lse-summer-week-2014-21-Porting%20and%20testing%20a%20TCPIP%20stack%20without%20an%20ethernet%20driver.pdf > > https://news.ycombinator.com/item?id=8537645 > > > http://www.embedded.com/design/prototyping-and-development/4237636/Bare-metal-embedded-software-development-with---without-an-RTOS > > Thanks for the links! > > However, PilOS is complete so far. We just have some very concrete > problems at the moment, which should be solved. > > Or, to be exact, I myself don't have any problem ;) But PilOS doesn't > boot properly on some machines. This may well be due to the fact that > those machines don't have the right CPU or BIOS. What's expected is a > multi-core x86-64 CPU, for example. > > Of course I'm glad for any hint which may solve these problems. Perhaps > just some little stupid error ... > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: Booting PilOS
On Fri, Jul 10, 2015 at 09:55:30AM -0400, Rick Lyman wrote: > May be useful: > > https://blog.netbsd.org/tnf/entry/an_internet_ready_os_from > https://www.raspberrypi.org/forums/viewtopic.php?f=72&t=92579 > https://lse.epita.fr/lse-summer-week-2014/slides/lse-summer-week-2014-21-Porting%20and%20testing%20a%20TCPIP%20stack%20without%20an%20ethernet%20driver.pdf > https://news.ycombinator.com/item?id=8537645 > http://www.embedded.com/design/prototyping-and-development/4237636/Bare-metal-embedded-software-development-with---without-an-RTOS Thanks for the links! However, PilOS is complete so far. We just have some very concrete problems at the moment, which should be solved. Or, to be exact, I myself don't have any problem ;) But PilOS doesn't boot properly on some machines. This may well be due to the fact that those machines don't have the right CPU or BIOS. What's expected is a multi-core x86-64 CPU, for example. Of course I'm glad for any hint which may solve these problems. Perhaps just some little stupid error ... ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Rick, > Do we need to re-invent the wheel here? maybe we could leverage: > > https://en.wikipedia.org/wiki/BareMetal > https://github.com/ReturnInfinity/BareMetal-OS > http://www.returninfinity.com/baremetal.html > http://www.osnews.com/story/27566/BareMetal_OS_gets_TCP_IP Yes, I've seen it. You are right, this may be a good idea for deeper investigation. However, I just didn't want to invest the time to analyze a full-blown existing operating system. I used the information found at OSDev: http://wiki.osdev.org Much easier to read than a source tree ;) And of course the "AMD64 Architecture Programmer's Manuals" volumes 1-3. Mainly vol. 2, "System Programming" (vol. 3 for the instruction set I had already used extensivily when writing the Pil64 VM). ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
May be useful: https://blog.netbsd.org/tnf/entry/an_internet_ready_os_from https://www.raspberrypi.org/forums/viewtopic.php?f=72&t=92579 https://lse.epita.fr/lse-summer-week-2014/slides/lse-summer-week-2014-21-Porting%20and%20testing%20a%20TCPIP%20stack%20without%20an%20ethernet%20driver.pdf https://news.ycombinator.com/item?id=8537645 http://www.embedded.com/design/prototyping-and-development/4237636/Bare-metal-embedded-software-development-with---without-an-RTOS On Fri, Jul 10, 2015 at 9:30 AM, Alexander Burger wrote: > Hi Geo, > > thanks for the investigations! > > > I think i got some leads why some of us got stuck with "Checking long > mode" > > What i noticed is the that if i insert some message printing on most > > parts of the code between "Loading PilOS" and "Checking long mode", i > > will arrive on the real error which is "ERROR: CPU has no local APIC". > > Yes, that's interesting. So this means that message printing doesn't > work reliably? Did the messages you inserted appear? Or does it mean > that your CPU passed the tests for "Extended function available" and > "Check long mode" (Bit 29), but then finally failed in the "Check local > APIC"? > > > > I check my BIOS how to enable APIC but seems my BIOS does not have > > such option. So my plan is to enable APIC through assembly code but > > didn't work, any idea? > > I think this is not an option in the BIOS. The "Local APICs" are part of > the CPU. Each core in a multi-core CPU has its own private local APIC > (see http://wiki.osdev.org/APIC). > > The APIC *is* actually enabled at the end of "pilos/x86-64/beg.l", in > these lines: > >mov $0x001B, %ecx # APIC Base MSR >rdmsr >or $0x0800, %eax # Enable APIC (Bit 11) >wrmsr >and $0xF000, %eax # Get base address >or $0x93, %eax# 2 MiB + P | R/W | PCD >mov %eax, 8(%edi) # Map APICs to 0x20 >movl $0xFEC00093, 16(%edi)# Map IO-APIC 0x40 >movw $0x1FF, (0x2000F0) # Spurious IR vector + APIC enable > > But only after the above test succeeded, of course. > > > > But before that i want to resolve why the code will not work properly > > if without the newly inserted message printing.. is it about code > > Yes, this is a strange thing. It is not good if we can't even rely on > the debug messages ;) > > > misalignment? Maybe it differs per CPU model? > > Misalignment should not be an issue. We are still in 16-bit code (8086 > real mode) here. > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: Booting PilOS
Do we need to re-invent the wheel here? maybe we could leverage: https://en.wikipedia.org/wiki/BareMetal https://github.com/ReturnInfinity/BareMetal-OS http://www.returninfinity.com/baremetal.html http://www.osnews.com/story/27566/BareMetal_OS_gets_TCP_IP On Fri, Jul 10, 2015 at 9:30 AM, Alexander Burger wrote: > Hi Geo, > > thanks for the investigations! > > > I think i got some leads why some of us got stuck with "Checking long > mode" > > What i noticed is the that if i insert some message printing on most > > parts of the code between "Loading PilOS" and "Checking long mode", i > > will arrive on the real error which is "ERROR: CPU has no local APIC". > > Yes, that's interesting. So this means that message printing doesn't > work reliably? Did the messages you inserted appear? Or does it mean > that your CPU passed the tests for "Extended function available" and > "Check long mode" (Bit 29), but then finally failed in the "Check local > APIC"? > > > > I check my BIOS how to enable APIC but seems my BIOS does not have > > such option. So my plan is to enable APIC through assembly code but > > didn't work, any idea? > > I think this is not an option in the BIOS. The "Local APICs" are part of > the CPU. Each core in a multi-core CPU has its own private local APIC > (see http://wiki.osdev.org/APIC). > > The APIC *is* actually enabled at the end of "pilos/x86-64/beg.l", in > these lines: > >mov $0x001B, %ecx # APIC Base MSR >rdmsr >or $0x0800, %eax # Enable APIC (Bit 11) >wrmsr >and $0xF000, %eax # Get base address >or $0x93, %eax# 2 MiB + P | R/W | PCD >mov %eax, 8(%edi) # Map APICs to 0x20 >movl $0xFEC00093, 16(%edi)# Map IO-APIC 0x40 >movw $0x1FF, (0x2000F0) # Spurious IR vector + APIC enable > > But only after the above test succeeded, of course. > > > > But before that i want to resolve why the code will not work properly > > if without the newly inserted message printing.. is it about code > > Yes, this is a strange thing. It is not good if we can't even rely on > the debug messages ;) > > > misalignment? Maybe it differs per CPU model? > > Misalignment should not be an issue. We are still in 16-bit code (8086 > real mode) here. > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: Booting PilOS
Hi Geo, thanks for the investigations! > I think i got some leads why some of us got stuck with "Checking long mode" > What i noticed is the that if i insert some message printing on most > parts of the code between "Loading PilOS" and "Checking long mode", i > will arrive on the real error which is "ERROR: CPU has no local APIC". Yes, that's interesting. So this means that message printing doesn't work reliably? Did the messages you inserted appear? Or does it mean that your CPU passed the tests for "Extended function available" and "Check long mode" (Bit 29), but then finally failed in the "Check local APIC"? > I check my BIOS how to enable APIC but seems my BIOS does not have > such option. So my plan is to enable APIC through assembly code but > didn't work, any idea? I think this is not an option in the BIOS. The "Local APICs" are part of the CPU. Each core in a multi-core CPU has its own private local APIC (see http://wiki.osdev.org/APIC). The APIC *is* actually enabled at the end of "pilos/x86-64/beg.l", in these lines: mov $0x001B, %ecx # APIC Base MSR rdmsr or $0x0800, %eax # Enable APIC (Bit 11) wrmsr and $0xF000, %eax # Get base address or $0x93, %eax# 2 MiB + P | R/W | PCD mov %eax, 8(%edi) # Map APICs to 0x20 movl $0xFEC00093, 16(%edi)# Map IO-APIC 0x40 movw $0x1FF, (0x2000F0) # Spurious IR vector + APIC enable But only after the above test succeeded, of course. > But before that i want to resolve why the code will not work properly > if without the newly inserted message printing.. is it about code Yes, this is a strange thing. It is not good if we can't even rely on the debug messages ;) > misalignment? Maybe it differs per CPU model? Misalignment should not be an issue. We are still in 16-bit code (8086 real mode) here. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, I think i got some leads why some of us got stuck with "Checking long mode" What i noticed is the that if i insert some message printing on most parts of the code between "Loading PilOS" and "Checking long mode", i will arrive on the real error which is "ERROR: CPU has no local APIC". I check my BIOS how to enable APIC but seems my BIOS does not have such option. So my plan is to enable APIC through assembly code but didn't work, any idea? But before that i want to resolve why the code will not work properly if without the newly inserted message printing.. is it about code misalignment? Maybe it differs per CPU model? BR,Geo On Thursday, July 9, 2015 9:10 PM, Alexander Burger wrote: Hi Geo, > Indeed! ok so time to install qemu.. but hmm if the current pilOS > works on your qemu then it would not help right? Or does qemu also > depends on its host hardware that its running? I think it doesn't. After all, qemu can emulate various systems. > Hmmm might be helpful if we can refer how those liveUSB handle their boot-up? Perhaps. But I think they do some things by their own, not depending on the BIOS. For example, they do probably implement their own USB library, and their own disk I/O. I didn't want to go so far, as the BIOS is supposed to do what we need. But, anyway, the other current problem - detecting 64-bit long mode - is not an issue of the BIOS but of the CPU alone. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Geo, > Indeed! ok so time to install qemu.. but hmm if the current pilOS > works on your qemu then it would not help right? Or does qemu also > depends on its host hardware that its running? I think it doesn't. After all, qemu can emulate various systems. > Hmmm might be helpful if we can refer how those liveUSB handle their boot-up? Perhaps. But I think they do some things by their own, not depending on the BIOS. For example, they do probably implement their own USB library, and their own disk I/O. I didn't want to go so far, as the BIOS is supposed to do what we need. But, anyway, the other current problem - detecting 64-bit long mode - is not an issue of the BIOS but of the CPU alone. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, > The problem is that this is a bit tedious (unless using e.g. qemu)> because > you have to put the test onto the USB-stick each time and reboot> the test > machine with it. Indeed! ok so time to install qemu.. but hmm if the current pilOS works on your qemu then it would not help right? Or does qemu also depends on its host hardware that its running? > Hmm, perhaps, but I don't know how. Because we *need* to read the> sectors > from the stick, don't we?>> Perhaps there is another way to format the boot > partitions and/or use> another BIOS call. I just don't know about it. Hmm ok I think there should be a generic way to do this.. will see what i can find then.. > Also, it would be good to know if VirtualBox *really* doesn't support> this > BIOS call, or if there is some other reason why it fails. I think it should support coz i think almost all virtual machines should work as much as possible as near as an actual standalone hardware? But lets see.. Hmmm might be helpful if we can refer how those liveUSB handle their boot-up? BR,geo On Wednesday, July 8, 2015 8:25 PM, Alexander Burger wrote: Hi Geo, > OK did a quick peek and most of them are in x86 assembly hmmm Yeah. Basically calls to the 'cpuid' instruction to question the CPU for its parameters. > I see, so it means it got stuck somewhere on the checking, would it be > possible to be inside an infinite loop? I believe that the 'cpuid' instruction cannot loop or crash. Rather, I suspect that for some reason the following messages are not printed because the CPU got into an unknown state. > it possible to have a debug mode for PilOS that it will not overwrite > the messages? Yes. What I did usually during development is inserting more 'print' messages, similar to mov $LongMsg, %si call print and and/or stopped the CPU with jmp stop so that the blue VGA screen of PilOS doesn't overwrite the boot screen. Even easier is, if you re-use some existing message, e.g. "Loading PilOS" (which is in 'LoadMsg') and then jump directly to 'bootError' which will output the message and stop the CPU. So if you insert mov $LoadMsg, %si jmp bootError after e.g. the first 'cpuid' call, and you see "Loading PilOS" appearing a second time, you are sure that the boot got this far. The problem is that this is a bit tedious (unless using e.g. qemu) because you have to put the test onto the USB-stick each time and reboot the test machine with it. > This is done via> BIOS interrupt 0x13: > >https://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D42h:_Extended_Read_Sectors_From_Drive > I think VirtualBox doesn't support this interrupt call. > I see, ok noted. But still this can be reworked right? Hmm, perhaps, but I don't know how. Because we *need* to read the sectors from the stick, don't we? Perhaps there is another way to format the boot partitions and/or use another BIOS call. I just don't know about it. Also, it would be good to know if VirtualBox *really* doesn't support this BIOS call, or if there is some other reason why it fails. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Geo, > OK did a quick peek and most of them are in x86 assembly hmmm Yeah. Basically calls to the 'cpuid' instruction to question the CPU for its parameters. > I see, so it means it got stuck somewhere on the checking, would it be > possible to be inside an infinite loop? I believe that the 'cpuid' instruction cannot loop or crash. Rather, I suspect that for some reason the following messages are not printed because the CPU got into an unknown state. > it possible to have a debug mode for PilOS that it will not overwrite > the messages? Yes. What I did usually during development is inserting more 'print' messages, similar to mov $LongMsg, %si call print and and/or stopped the CPU with jmp stop so that the blue VGA screen of PilOS doesn't overwrite the boot screen. Even easier is, if you re-use some existing message, e.g. "Loading PilOS" (which is in 'LoadMsg') and then jump directly to 'bootError' which will output the message and stop the CPU. So if you insert mov $LoadMsg, %si jmp bootError after e.g. the first 'cpuid' call, and you see "Loading PilOS" appearing a second time, you are sure that the boot got this far. The problem is that this is a bit tedious (unless using e.g. qemu) because you have to put the test onto the USB-stick each time and reboot the test machine with it. > This is done via> BIOS interrupt 0x13: > >https://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D42h:_Extended_Read_Sectors_From_Drive > I think VirtualBox doesn't support this interrupt call. > I see, ok noted. But still this can be reworked right? Hmm, perhaps, but I don't know how. Because we *need* to read the sectors from the stick, don't we? Perhaps there is another way to format the boot partitions and/or use another BIOS call. I just don't know about it. Also, it would be good to know if VirtualBox *really* doesn't support this BIOS call, or if there is some other reason why it fails. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Mattias + Geo, > Alex, you already got the following results, I'm just reposting them to the > list > as well. Yes, thanks! > I have tried PilOS on the following machines: > ... > *Lenovo Thinkpad x201i, i3 cpu > Fails with the message "READ ERROR 08" > > *Lenovo Thinkpad x230, i5 cpu > Fails with the message "READ ERROR 01" Also, for public info: The "READ ERROR nn" error codes are supposed to mean: http://www.bioscentral.com/misc/biosint13.htm So 08 should be "DMA overrun (floppy)", and 01 "Invalid command". The latter is what I would expect if the BIOS doesn't support the Extended Read Sectors call. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, > That's interesting! i3 is a 64-bit CPU, right? So the check for long> mode > doesn't work? I would at least expect an error message. Yes it is also a 64-bit, just now i also got the same result here at my room's PC which is an AMD64, how is the checking done btw? > The checks are done in "pilos/x86-64/beg.l" starting from line 32. If> the > checks were successful, it should next print "Initializing memory".> > Otherwise, we should see "ERROR: CPU does not support long mode" or> "ERROR: > CPU has no local APIC". OK did a quick peek and most of them are in x86 assembly hmmm > Normally, all those messages are not visible, because the boot is so> fast > that they are overwritten quickly.>> ...> > No, it all goes in a tiny > fraction of a second. Normally, you don't see> any of the messages. I see, so it means it got stuck somewhere on the checking, would it be possible to be inside an infinite loop? hmm if only there is a WDT... is it possible to have a debug mode for PilOS that it will not overwrite the messages? Like it will just do a newline per message like we did with pilMCU emulator version? Might be useful during polishing pilOS to able to boot in all different x86-64 hardware.. > I think other people also tried VirtualBox, and said it doesn't work. It> > doesn't even load the remaining sectors from the drive. This is done via> > BIOS interrupt 0x13:>> > https://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D42h:_Extended_Read_Sectors_From_Drive>> > I think VirtualBox doesn't support this interrupt call. I see, ok noted. But still this can be reworked right? Coz it would be nice to have it boot in all cases as long as its x86-64 machine, correct? > Alex, you already got the following results, I'm just reposting them to the > list> as well.>> I have tried PilOS on the following machines: Hi Mattias, thanks for sharing your list! It looks like the current pilOS is tailored for Acer hardware's hmmm might make sense coz Alex developed it on his Acer laptop as well... BR,Geo On Wednesday, July 8, 2015 6:57 PM, Mattias Sundblad wrote: Hi George and Alex, > Yes! i was able build the image and immediately tried it using my USB stick, > it's working!!! but I'm stuck at "Checking long mode".. maybe because I'm > trying it under an Intel i3? Let me try it with my AMD machine back in my > room and feedback to you how it goes... this is great!! I ran into the same message when trying to boot PilOS on an Asus UL30A, this machine has a core2duo cpu. Alex, you already got the following results, I'm just reposting them to the list as well. I have tried PilOS on the following machines: *Acer Aspire One 722, AMD C-60 cpu Everything works fine on this machine. *Lenovo Thinkpad x201i, i3 cpu Fails with the message "READ ERROR 08" *Lenovo Thinkpad x230, i5 cpu Fails with the message "READ ERROR 01" *and finally the Asus UL30A, Core2Duo cpu Does not get past the message "Checking long mode" Best regards, Mattias -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi George and Alex, > Yes! i was able build the image and immediately tried it using my USB stick, > it's working!!! but I'm stuck at "Checking long mode".. maybe because I'm > trying it under an Intel i3? Let me try it with my AMD machine back in my > room and feedback to you how it goes... this is great!! I ran into the same message when trying to boot PilOS on an Asus UL30A, this machine has a core2duo cpu. Alex, you already got the following results, I'm just reposting them to the list as well. I have tried PilOS on the following machines: *Acer Aspire One 722, AMD C-60 cpu Everything works fine on this machine. *Lenovo Thinkpad x201i, i3 cpu Fails with the message "READ ERROR 08" *Lenovo Thinkpad x230, i5 cpu Fails with the message "READ ERROR 01" *and finally the Asus UL30A, Core2Duo cpu Does not get past the message "Checking long mode" Best regards, Mattias -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Geo, > Another feedback is i try to boot it on my VirtualBox and I'm seeing > "Loading PilOS" but its already a while, is this expected? No, it all goes in a tiny fraction of a second. Normally, you don't see any of the messages. I think other people also tried VirtualBox, and said it doesn't work. It doesn't even load the remaining sectors from the drive. This is done via BIOS interrupt 0x13: https://en.wikipedia.org/wiki/INT_13#INT_13h_AH.3D42h:_Extended_Read_Sectors_From_Drive I think VirtualBox doesn't support this interrupt call. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, Another feedback is i try to boot it on my VirtualBox and I'm seeing "Loading PilOS" but its already a while, is this expected? BR,Geo On Wednesday, July 8, 2015 4:41 PM, George Orais wrote: Hi Alex, > Oops, sorry. My fault! "init/.pil/history" was added recently, and I> forgot > to include it into the release script.>> Please download once more > "pilos.tgz". Yes! i was able build the image and immediately tried it using my USB stick, it's working!!! but I'm stuck at "Checking long mode".. maybe because I'm trying it under an Intel i3? Let me try it with my AMD machine back in my room and feedback to you how it goes... this is great!! > I think that currently there is no special dependency on AMD, though I> used > only the AMD CPU manuals. OK noted, and yes i agree with that.. but lets keep an eye on this.. BR,Geo On Wednesday, July 8, 2015 1:56 PM, Alexander Burger wrote: Hi Geo, thanks for the feedback! :) > I tried building them and here is what i get: > * First release: make will generate x86-64.bin* Latest release: make: > *** No rule to make target `init/.pil/history', needed by `db.bin'. Oops, sorry. My fault! "init/.pil/history" was added recently, and I forgot to include it into the release script. Please download once more "pilos.tgz". > I used pil 3.1.11.1 That's perfect. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Geo, > Yes! i was able build the image and immediately tried it using my USB > stick, it's working!!! but I'm stuck at "Checking long mode".. maybe > because I'm trying it under an Intel i3? Thanks! That's interesting! i3 is a 64-bit CPU, right? So the check for long mode doesn't work? I would at least expect an error message. The checks are done in "pilos/x86-64/beg.l" starting from line 32. If the checks were successful, it should next print "Initializing memory". Otherwise, we should see "ERROR: CPU does not support long mode" or "ERROR: CPU has no local APIC". Normally, all those messages are not visible, because the boot is so fast that they are overwritten quickly. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, > Oops, sorry. My fault! "init/.pil/history" was added recently, and I> forgot > to include it into the release script.>> Please download once more > "pilos.tgz". Yes! i was able build the image and immediately tried it using my USB stick, it's working!!! but I'm stuck at "Checking long mode".. maybe because I'm trying it under an Intel i3? Let me try it with my AMD machine back in my room and feedback to you how it goes... this is great!! > I think that currently there is no special dependency on AMD, though I> used > only the AMD CPU manuals. OK noted, and yes i agree with that.. but lets keep an eye on this.. BR,Geo On Wednesday, July 8, 2015 1:56 PM, Alexander Burger wrote: Hi Geo, thanks for the feedback! :) > I tried building them and here is what i get: > * First release: make will generate x86-64.bin* Latest release: make: > *** No rule to make target `init/.pil/history', needed by `db.bin'. Oops, sorry. My fault! "init/.pil/history" was added recently, and I forgot to include it into the release script. Please download once more "pilos.tgz". > I used pil 3.1.11.1 That's perfect. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Geo, thanks for the feedback! :) > I tried building them and here is what i get: > * First release: make will generate x86-64.bin* Latest release: make: > *** No rule to make target `init/.pil/history', needed by `db.bin'. Oops, sorry. My fault! "init/.pil/history" was added recently, and I forgot to include it into the release script. Please download once more "pilos.tgz". > I used pil 3.1.11.1 That's perfect. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Geo, > Actually i did try to boot this since from your first release but > until now i still cant make it boot, it pauses for a while then proceed > to the default OS stored on the hard drive.. I see. So it isn't even recognized as a bootable USB disk. > Next plan is to build it > within the machine i want to boot on it.. Btw does Intel or AMD matter > on this? I think that currently there is no special dependency on AMD, though I used only the AMD CPU manuals. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, I tried building them and here is what i get: * First release: make will generate x86-64.bin* Latest release: make: *** No rule to make target `init/.pil/history', needed by `db.bin'. Stop. I used pil 3.1.11.1 BR,Geo On Wednesday, July 8, 2015 10:27 AM, George Orais wrote: Hi Alex, Actually i did try to boot this since from your first release but until now i still cant make it boot, it pauses for a while then proceed to the default OS stored on the hard drive.. Next plan is to build it within the machine i want to boot on it.. Btw does Intel or AMD matter on this? BR,Geo On Sunday, July 5, 2015 5:19 PM, Alexander Burger wrote: Hi all, today I got the *first* positive feedback of booting PilOS on a physical machine (i.e. not qemu etc.), from Mattias Sundblad. Thanks again! Strange that nobody else seems to succeed (or has ever tried?)! . after quite some hype here about PilMCU and later PilOS. I'd like to find out reasons why it possibly might not work. Until now I definitely only knew that it boots on my own Acer TavelMate P-253E, as I have no other machine to test it on. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: Booting PilOS
Hi Alex, Actually i did try to boot this since from your first release but until now i still cant make it boot, it pauses for a while then proceed to the default OS stored on the hard drive.. Next plan is to build it within the machine i want to boot on it.. Btw does Intel or AMD matter on this? BR,Geo On Sunday, July 5, 2015 5:19 PM, Alexander Burger wrote: Hi all, today I got the *first* positive feedback of booting PilOS on a physical machine (i.e. not qemu etc.), from Mattias Sundblad. Thanks again! Strange that nobody else seems to succeed (or has ever tried?)! . after quite some hype here about PilMCU and later PilOS. I'd like to find out reasons why it possibly might not work. Until now I definitely only knew that it boots on my own Acer TavelMate P-253E, as I have no other machine to test it on. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Booting PilOS
Hi all, today I got the *first* positive feedback of booting PilOS on a physical machine (i.e. not qemu etc.), from Mattias Sundblad. Thanks again! Strange that nobody else seems to succeed (or has ever tried?)! .. after quite some hype here about PilMCU and later PilOS. I'd like to find out reasons why it possibly might not work. Until now I definitely only knew that it boots on my own Acer TavelMate P-253E, as I have no other machine to test it on. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS Boot Issues
On Mon, Jun 29, 2015 at 08:02:06PM +0200, Alexander Burger wrote: > It seems that virtualbox doesn't support BIOS 0x13 interrupts for > "Extended Read Sectors" calls. > > > > It still freezes on the black screen Loading PilOS > > We guessed that from the fact that this message appears, but not the > following "Checking long mode". And, for Virtual PC, we get a "READ ERROR 01" which means "Invalid command" (https://en.wikipedia.org/wiki/INT_13). Same. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS Boot Issues
Hi Joe, > The new version boots fine on qemu under windows 7 x64. Under > virtualbox on the same platform, get stuck with a black screen that > says Loading PilOS with nothing else displayed For the mailing list: We discussed this in IRC just now. It seems that virtualbox doesn't support BIOS 0x13 interrupts for "Extended Read Sectors" calls. > It still freezes on the black screen Loading PilOS We guessed that from the fact that this message appears, but not the following "Checking long mode". ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilOS Boot Issues
Hi Alex, The new version boots fine on qemu under windows 7 x64. Under virtualbox on the same platform, get stuck with a black screen that says Loading PilOS with nothing else displayed This is how I converted the image "c:\Program Files\qemu\qemu-img.exe" convert -O vmdk x86-64.img x86-64.vmdk The symptoms are the same when I use vboxmanage to convert: c:\Program Files\Oracle\VirtualBox\VBoxManage.exe convertfromraw x86-64.img x86-64_vbox.vmdk --format VMDK Converting from raw image file="x86-64.img" to file="x86-64_vbox.vmdk".. Creating dynamic image with size 684032 bytes (1MB)... It still freezes on the black screen Loading PilOS On Mon, Jun 29, 2015 at 9:55 AM, Alexander Burger wrote: > Hi all, > > it seems that there are still problems with booting PilOS. > > While it works for me (on Qemu and on my Acer notebook), it hear that on > other emulators or hardware people just see a black screen. So I would > be glad to find out the reason(s). > > > One reason might be that the image is not recognized as a hard disk: > > > http://reboot.pro/topic/7512-fool-the-bios-booting-any-usb-stick-as-a-hard-disk > > So I followed the suggestions there, and changed the partition table to > two dummy-partitions instead of one. Also, I set one System ID to > "Linux" ("83", instead of the arbitrary "22" before), and the other to > "Linux swap" (ID "82"). I don't know if this helps though. > > > Also, I added a few diagnostic messages, to see how far it gets. > > So anybody daring to try it is welcome! As before, PilOS can be > downloaded from > >http://software-lab.de/pilos.tgz > > and put on an USB-Stick, e.g. on /dev/sdb > >$ sudo dd if=x86-64.img of=/dev/sdb > > Then try to boot (only on x86-64 (Amd64) hardware, of course). > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
PilOS Boot Issues
Hi all, it seems that there are still problems with booting PilOS. While it works for me (on Qemu and on my Acer notebook), it hear that on other emulators or hardware people just see a black screen. So I would be glad to find out the reason(s). One reason might be that the image is not recognized as a hard disk: http://reboot.pro/topic/7512-fool-the-bios-booting-any-usb-stick-as-a-hard-disk So I followed the suggestions there, and changed the partition table to two dummy-partitions instead of one. Also, I set one System ID to "Linux" ("83", instead of the arbitrary "22" before), and the other to "Linux swap" (ID "82"). I don't know if this helps though. Also, I added a few diagnostic messages, to see how far it gets. So anybody daring to try it is welcome! As before, PilOS can be downloaded from http://software-lab.de/pilos.tgz and put on an USB-Stick, e.g. on /dev/sdb $ sudo dd if=x86-64.img of=/dev/sdb Then try to boot (only on x86-64 (Amd64) hardware, of course). ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
Exciting! Thank you very much, Alex! On 19.06.2015 22:16, Alexander Burger wrote: Hi all, I'm happy to announce PilOS - The PicoLisp Operating System!
Re: PilMCU is dead - Long live PilOS!
Hi Kuba, Thanks! Will check it out and PM you how it goes.. cheers! -geo On Monday, June 22, 2015 10:00 AM, Kuba Tyszko wrote: Hi Geo, How about ready-made code to support sdram on altera?: https://github.com/stffrdhrn/sdram-controller This was written by my buddy Stafford Horne Give it a try and let me know how it goes... Cheers Sent from my iPhone > On Jun 21, 2015, at 20:36, George Orais wrote: > > Hi Alex, > I see! That's indeed great, thanks! This is really good stuff Alex. > > Hi Kuba, > Sorry the progress was so slow because crazy schedule at work.. for pilMCU > I'm stuck with mobile DDR SDRAM interface, it's not as straight forward as > SRAM so tentatively i'm planning to fabricate a FPGA board with Cypress Async > SRAM to be more near from our original implementation. I can share you the > planned schematics if you want to help. > BR,geo > > > > > > On Sunday, June 21, 2015 10:06 AM, Kuba Tyszko wrote: > > > Great stuff, > I was just going to ask Geo whether this means to end of Picolisp on fpga= -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
Hi Geo, How about ready-made code to support sdram on altera?: https://github.com/stffrdhrn/sdram-controller This was written by my buddy Stafford Horne Give it a try and let me know how it goes... Cheers Sent from my iPhone > On Jun 21, 2015, at 20:36, George Orais wrote: > > Hi Alex, > I see! That's indeed great, thanks! This is really good stuff Alex. > > Hi Kuba, > Sorry the progress was so slow because crazy schedule at work.. for pilMCU > I'm stuck with mobile DDR SDRAM interface, it's not as straight forward as > SRAM so tentatively i'm planning to fabricate a FPGA board with Cypress Async > SRAM to be more near from our original implementation. I can share you the > planned schematics if you want to help. > BR,geo > > > > > > On Sunday, June 21, 2015 10:06 AM, Kuba Tyszko wrote: > > > Great stuff, > I was just going to ask Geo whether this means to end of Picolisp on fpga.= -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
Hi Alex, I see! That's indeed great, thanks! This is really good stuff Alex. Hi Kuba, Sorry the progress was so slow because crazy schedule at work.. for pilMCU I'm stuck with mobile DDR SDRAM interface, it's not as straight forward as SRAM so tentatively i'm planning to fabricate a FPGA board with Cypress Async SRAM to be more near from our original implementation. I can share you the planned schematics if you want to help. BR,geo On Sunday, June 21, 2015 10:06 AM, Kuba Tyszko wrote: Great stuff, I was just going to ask Geo whether this means to end of Picolisp on fpga..
Re: PilMCU is dead - Long live PilOS!
Great stuff, I was just going to ask Geo whether this means to end of Picolisp on fpga... I just tried PilOS - works on my qemu, will try on my actual PC later and report back. Cheers > On Jun 21, 2015, at 12:15 AM, George Orais wrote: > > This is great! Will try it soon, thanks! > > I'm really sorry about pilMCU, actually I'm still pursuing to build it but as > of the moment time is not on my side... but still hoping someday soon... btw, > if ever pilMCU is implemented, will PilOS work immediately over it? > > > > On Saturday, June 20, 2015 6:35 AM, Jakob Eriksson > wrote: > > > > Thank you! > > > > On 19/06/15 22:16, Alexander Burger wrote: > > Hi all, > > > > I'm happy to announce PilOS - The PicoLisp Operating System! > > > > It is a modification of the infamous PilMCU, which unfortunately doesn't > > seem to get off the ground. So in order not to have wasted all that > > effort, I decided to let it run on standard PC hardware, basically > > directly off the BIOS. > > > > In the future, we might think of utilizing it in embedded systems. > > > > I release it free to the public. It is currently just a toy project, > > which gave me lots of fun during the last two weeks. > > > > You can read more about it, watch a demo video, and download all at > > > >http://picolisp.com/wiki/?PilOS <http://picolisp.com/wiki/?PilOS> > > > > ♪♫ Alex > > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de > <mailto:picolisp@software-lab.de>?subject=Unsubscribe > >
Re: PilMCU is dead - Long live PilOS!
Hi Geo, > btw, if ever pilMCU is implemented, will PilOS work immediately over it? Yes, the PicoLisp VM asm sources are the same. Just the low-level interfaces, boot procedure etc. are different. I don't want to maintain the pilMCU source tree separately, so we can backport to pilMCU later if needed. ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
This is great! Will try it soon, thanks! I'm really sorry about pilMCU, actually I'm still pursuing to build it but as of the moment time is not on my side... but still hoping someday soon... btw, if ever pilMCU is implemented, will PilOS work immediately over it? On Saturday, June 20, 2015 6:35 AM, Jakob Eriksson wrote: Thank you! On 19/06/15 22:16, Alexander Burger wrote: > Hi all, > > I'm happy to announce PilOS - The PicoLisp Operating System! > > It is a modification of the infamous PilMCU, which unfortunately doesn't > seem to get off the ground. So in order not to have wasted all that > effort, I decided to let it run on standard PC hardware, basically > directly off the BIOS. > > In the future, we might think of utilizing it in embedded systems. > > I release it free to the public. It is currently just a toy project, > which gave me lots of fun during the last two weeks. > > You can read more about it, watch a demo video, and download all at > > http://picolisp.com/wiki/?PilOS > > ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
Thank you! On 19/06/15 22:16, Alexander Burger wrote: > Hi all, > > I'm happy to announce PilOS - The PicoLisp Operating System! > > It is a modification of the infamous PilMCU, which unfortunately doesn't > seem to get off the ground. So in order not to have wasted all that > effort, I decided to let it run on standard PC hardware, basically > directly off the BIOS. > > In the future, we might think of utilizing it in embedded systems. > > I release it free to the public. It is currently just a toy project, > which gave me lots of fun during the last two weeks. > > You can read more about it, watch a demo video, and download all at > >http://picolisp.com/wiki/?PilOS > > ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
*someone* will surely add network support at one point. maybe Alex, maybe someone else. I think for him this is more a hobby side project, but as its free software, if anyone has any needs everyone is free to implement them ;-) PS: Yeah I too really want to run servers with that eventually, so, yes, *someone* please implement network stack ! - Original Message - From: Joe Bogner [mailto:joebog...@gmail.com] To: picolisp@software-lab.de Sent: Fri, 19 Jun 2015 16:47:58 -0400 Subject: Alex, this is incredibly cool. It runs fine on win64 under qemu. This will be fun to play with. Are you considering adding networking support in the future? I imagine that would be quite difficult. On Fri, Jun 19, 2015 at 4:16 PM, Alexander Burger wrote: > Hi all, > > I'm happy to announce PilOS - The PicoLisp Operating System! > > It is a modification of the infamous PilMCU, which unfortunately doesn't > seem to get off the ground. So in order not to have wasted all that > effort, I decided to let it run on standard PC hardware, basically > directly off the BIOS. > > In the future, we might think of utilizing it in embedded systems. > > I release it free to the public. It is currently just a toy project, > which gave me lots of fun during the last two weeks. > > You can read more about it, watch a demo video, and download all at > >http://picolisp.com/wiki/?PilOS > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
Re: PilMCU is dead - Long live PilOS!
I was so excited I didn't read close enough "Also missing is - of course - networking (left as an exercise for the reader ;)." On Fri, Jun 19, 2015 at 4:47 PM, Joe Bogner wrote: > Alex, this is incredibly cool. It runs fine on win64 under qemu. This will > be fun to play with. Are you considering adding networking support in the > future? I imagine that would be quite difficult. > > On Fri, Jun 19, 2015 at 4:16 PM, Alexander Burger > wrote: >> >> Hi all, >> >> I'm happy to announce PilOS - The PicoLisp Operating System! >> >> It is a modification of the infamous PilMCU, which unfortunately doesn't >> seem to get off the ground. So in order not to have wasted all that >> effort, I decided to let it run on standard PC hardware, basically >> directly off the BIOS. >> >> In the future, we might think of utilizing it in embedded systems. >> >> I release it free to the public. It is currently just a toy project, >> which gave me lots of fun during the last two weeks. >> >> You can read more about it, watch a demo video, and download all at >> >>http://picolisp.com/wiki/?PilOS >> >> ♪♫ Alex >> -- >> UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe > > -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe
Re: PilMCU is dead - Long live PilOS!
Alex, this is incredibly cool. It runs fine on win64 under qemu. This will be fun to play with. Are you considering adding networking support in the future? I imagine that would be quite difficult. On Fri, Jun 19, 2015 at 4:16 PM, Alexander Burger wrote: > Hi all, > > I'm happy to announce PilOS - The PicoLisp Operating System! > > It is a modification of the infamous PilMCU, which unfortunately doesn't > seem to get off the ground. So in order not to have wasted all that > effort, I decided to let it run on standard PC hardware, basically > directly off the BIOS. > > In the future, we might think of utilizing it in embedded systems. > > I release it free to the public. It is currently just a toy project, > which gave me lots of fun during the last two weeks. > > You can read more about it, watch a demo video, and download all at > >http://picolisp.com/wiki/?PilOS > > ♪♫ Alex > -- > UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe >
PilMCU is dead - Long live PilOS!
Hi all, I'm happy to announce PilOS - The PicoLisp Operating System! It is a modification of the infamous PilMCU, which unfortunately doesn't seem to get off the ground. So in order not to have wasted all that effort, I decided to let it run on standard PC hardware, basically directly off the BIOS. In the future, we might think of utilizing it in embedded systems. I release it free to the public. It is currently just a toy project, which gave me lots of fun during the last two weeks. You can read more about it, watch a demo video, and download all at http://picolisp.com/wiki/?PilOS ♪♫ Alex -- UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe