Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I'd be okay with Python, too -- my goal is code that will run on any platform so that Parallax doesn't have to keep defending itself (and missing out on possible customers) for being Windows-centric.
Looks like 30 of 72 virus checkers don't like the .exe file because part of it is encrypted.
Apparently, some viruses encrypt themselves to avoid detection...
Maybe that .exe packer looks like encryption? Was that used on this file?
Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I though Chip was translating his x86 assembly Spin2 compiler to Spin2.
Spin2, C or any other HLL would have to be compiled into assembly, so writing in assembly shouldn't be the problem. However, I suspect that Chip is using some assembly tricks that compilers normally don't use, but may be common in malware. If he could figure out what the assembly trick is, maybe he could avoid using it. It may be something he added recently. If one version works, but the next one fails then it must be something he added in the failed version.
The fact that the signed version still triggers generic detection is... ughhh.
Is it still using the executable compression? The AVs really hate it when you "generate" code at runtime (one thing many of them do is de- and re-compile the code they scan and then run it for a bit to see what it does - this obviously doesn't work properly if the code pages are writable)
Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I though Chip was translating his x86 assembly Spin2 compiler to Spin2.
I started to, but have been working on the Windows tools lately. I've almost got some really nice graphical debugging stuff working.
Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I though Chip was translating his x86 assembly Spin2 compiler to Spin2.
I started to, but have been working on the Windows tools lately. I've almost got some really nice graphical debugging stuff working.
Do you expect to get back to it eventually or have you abandoned the idea?
Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I though Chip was translating his x86 assembly Spin2 compiler to Spin2.
I started to, but have been working on the Windows tools lately. I've almost got some really nice graphical debugging stuff working.
Do you expect to get back to it eventually or have you abandoned the idea?
I don't know. I like the idea, but I don't know how practical it is to get people to dedicate monitors, keyboards, and mice to our chip. If the OS world becomes increasingly constrained by freedom-killing problems, like inability to deliver software easily, it might become very compelling. I figure our computers these days are massive blobs of spyware, first, that also allow us limited use for our own purposes, but that is getting narrowed. Freedom has been evaporating for a long time and, for me, the whole computing thing has been robbed of its early promise. I can't even reliably share my Windows app, anymore, which I never saw coming. Maybe someday Microsoft will take it up ten notches in a short span of time and then I'll focus purely on self-hosting.
If the OS world becomes increasingly constrained by freedom-killing problems, like inability to deliver software easily, it might become very compelling. I figure our computers these days are massive blobs of spyware, first, that also allow us limited use for our own purposes, but that is getting narrowed.
Internet Explorer becoming unremovable was one of the big reasons I stopped using Windoze. I vaguely entertained getting Win7 when M$ was forced to revert IE back to being a removable program again.
I note Edge has also become unremovable just last month.
Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I though Chip was translating his x86 assembly Spin2 compiler to Spin2.
I started to, but have been working on the Windows tools lately. I've almost got some really nice graphical debugging stuff working.
Do you expect to get back to it eventually or have you abandoned the idea?
I don't know. I like the idea, but I don't know how practical it is to get people to dedicate monitors, keyboards, and mice to our chip. If the OS world becomes increasingly constrained by freedom-killing problems, like inability to deliver software easily, it might become very compelling. I figure our computers these days are massive blobs of spyware, first, that also allow us limited use for our own purposes, but that is getting narrowed. Freedom has been evaporating for a long time and, for me, the whole computing thing has been robbed of its early promise. I can't even reliably share my Windows app, anymore, which I never saw coming. Maybe someday Microsoft will take it up ten notches in a short span of time and then I'll focus purely on self-hosting.
Why wait?
Is SPIN2 truly constrained to the Propeller chips?
If spin2cpp can handle SPIN2, or if necessary can be extended to, then people could choose between on-chip or off-board compiling. Another alternative is to use a P2 emulator (I seem to recall something like that being discussed at one time) for off-board compilation.
Those of us who prefer not to use Windows would appreciate the effort being made earlier, and you might find that something compiled by a Windows friendly compiler would be less likely to be flagged as malware by the anti-virus community.
That seems like a win-win to me.
Also, the longer you wait, the more work will have potentially been wasted when you decide to make the change.
Given how cheap keyboards, mice, and monitors are these days, I think there would be plenty of people who would like a dedicated setup. Their 'massive blobs of spyware' could then be used solely for viewing the documentation. The other alternative is a relatively cheap KVM switch.
I see the SPIN2 compiler written in SPIN2 to be less about pure self-hosting, and more about the provision of choice.
If the OS world becomes increasingly constrained by freedom-killing problems, like inability to deliver software easily, it might become very compelling. I figure our computers these days are massive blobs of spyware, first, that also allow us limited use for our own purposes, but that is getting narrowed.
Internet Explorer becoming unremovable was one of the big reasons I stopped using Windoze. I vaguely entertained getting Win7 when M$ was forced to revert IE back to being a removable program again.
I note Edge has also become unremovable just last month.
On my Android phone, I can't remove Facebook, of all things.
Here's an opportunity to translate PNut from x386 Assembly to generic C and compile with a modern tool set. Keeping the C generic may allow it to be compiled for Windows, Linux, Mac, and even the P2 by using FastSpin.
I though Chip was translating his x86 assembly Spin2 compiler to Spin2.
I started to, but have been working on the Windows tools lately. I've almost got some really nice graphical debugging stuff working.
Do you expect to get back to it eventually or have you abandoned the idea?
I don't know. I like the idea, but I don't know how practical it is to get people to dedicate monitors, keyboards, and mice to our chip. If the OS world becomes increasingly constrained by freedom-killing problems, like inability to deliver software easily, it might become very compelling. I figure our computers these days are massive blobs of spyware, first, that also allow us limited use for our own purposes, but that is getting narrowed. Freedom has been evaporating for a long time and, for me, the whole computing thing has been robbed of its early promise. I can't even reliably share my Windows app, anymore, which I never saw coming. Maybe someday Microsoft will take it up ten notches in a short span of time and then I'll focus purely on self-hosting.
Why wait?
Is SPIN2 truly constrained to the Propeller chips?
If spin2cpp can handle SPIN2, or if necessary can be extended to, then people could choose between on-chip or off-board compiling. Another alternative is to use a P2 emulator (I seem to recall something like that being discussed at one time) for off-board compilation.
Those of us who prefer not to use Windows would appreciate the effort being made earlier, and you might find that something compiled by a Windows friendly compiler would be less likely to be flagged as malware by the anti-virus community.
That seems like a win-win to me.
Also, the longer you wait, the more work will have potentially been wasted when you decide to make the change.
Given how cheap keyboards, mice, and monitors are these days, I think there would be plenty of people who would like a dedicated setup. Their 'massive blobs of spyware' could then be used solely for viewing the documentation. The other alternative is a relatively cheap KVM switch.
I see the SPIN2 compiler written in SPIN2 to be less about pure self-hosting, and more about the provision of choice.
All my work feels like concept development more than final implementation. I can retarget any time. It's just easiest to keep working this way, for now.
I know monitors and keyboards are cheap, but desk space is not. And field portability is important. I think we will always need tools that run on portable big-OS devices, because that is what people need the option of using.
There are a few things we've talked about within Parallax, like how come there is no USB class for turning your laptop/PC/phone (USB host) into a terminal display with pointer and keyboard controls (for the USB device)? I mean, it could be sandboxed and made harmless to the host machine. It would be a nice, generic means of system interfacing, providing display, input, file storage, and internet access. I think the reason this does not exist is because it gets people around the big, branded OS monstrosities that the vendors don't want you bypassing. It cuts them out of the spyware opportunity. I guess the closest we can get, which is even superior in some ways, is a web-page serving system that gets to use your host machine as its display, keyboard, etc. We've been talking about that, too, but we need to learn how to approach that goal.
I think the reason this does not exist is because it gets people around the big, branded OS monstrosities that the vendors don't want you bypassing. It cuts them out of the spyware opportunity.
LOL. You are probably on the right track. Devices now seem primarily intended to be used only to consume from controlled providers, which generates even more income, not to be able to produce and distribute. For the average Joe's they don't care because they only consume but for actual developers this is becoming a limitation. It will be very interesting when Apple moves from x86 to ARM to see how things end up with real (former?) personal computers too. Thankfully Linux still exists.
Internet Explorer becoming unremovable was one of the big reasons I stopped using Windoze. I vaguely entertained getting Win7 when M$ was forced to revert IE back to being a removable program again.
I note Edge has also become unremovable just last month.
It's even worse (or insiduous) than that: at least on W 7 and W 8.1' Windows Update, before allowing it to install, I'd clicked the blueish "further information"-link (MS knowledge base article KB4567409):
Under "Installation information", it's clearly stated the following: "To keep your browser secure and up to date, you are asked to accept automatic updates. By clicking Accept and get started you enable Microsoft Edge to update automatically so that you can always have the latest improvements. These updates are independent of your Windows update settings.".
.. It will be very interesting when Apple moves from x86 to ARM to see how things end up with real (former?) personal computers too. Thankfully Linux still exists.
Apple has already changed cores once, so this change will be largely invisible to users.
Apple will have tuned whatever core they use, to emulate other cores with little effort.
I know monitors and keyboards are cheap, but desk space is not. And field portability is important. I think we will always need tools that run on portable big-OS devices, because that is what people need the option of using.
There are a few things we've talked about within Parallax, like how come there is no USB class for turning your laptop/PC/phone (USB host) into a terminal display with pointer and keyboard controls (for the USB device)? I mean, it could be sandboxed and made harmless to the host machine. It would be a nice, generic means of system interfacing, providing display, input, file storage, and internet access....l.
If you want to avoid the big-OS syndrome, and get an agile user display, things like this Wio-Terminal exist, for a quite well priced $29.00
That could manage P2 debug support on 2 pins.
The point was that by doing this they will pretty much then control the entire system then including the CPUs. It will likely be far more difficult to develop/distribute any software that is built outside the sanctioned ecosystem. Right now you can still run Linux or Windows on a Mac using generically available x86 tools and do with them what you wish etc because it still mostly looks like a PC underneath. This may go away. If M$ follows this trend, then the typical PC will become a different more tightly controlled beast.
Comments
@JonnyMac
@cgracey
@Wuerfel_21
I ran the link again was able to download but this happened:
See attached
+1
MS Edge won't even let me download the v34u zip file...
Think this is new...
https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-antivirus/restore-quarantined-files-microsoft-defender-antivirus
https://www.virustotal.com/
Looks like 30 of 72 virus checkers don't like the .exe file because part of it is encrypted.
Apparently, some viruses encrypt themselves to avoid detection...
Maybe that .exe packer looks like encryption? Was that used on this file?
BTW, how do you compile Spin2 to run on an x86?
Mike
Is it still using the executable compression? The AVs really hate it when you "generate" code at runtime (one thing many of them do is de- and re-compile the code they scan and then run it for a bit to see what it does - this obviously doesn't work properly if the code pages are writable)
The thing is, this used to work. I think using that packer program raised a flag that won't go down now.
I started to, but have been working on the Windows tools lately. I've almost got some really nice graphical debugging stuff working.
Your code doesn't, but the packer "generates" your code from the compressed data
I don't know. I like the idea, but I don't know how practical it is to get people to dedicate monitors, keyboards, and mice to our chip. If the OS world becomes increasingly constrained by freedom-killing problems, like inability to deliver software easily, it might become very compelling. I figure our computers these days are massive blobs of spyware, first, that also allow us limited use for our own purposes, but that is getting narrowed. Freedom has been evaporating for a long time and, for me, the whole computing thing has been robbed of its early promise. I can't even reliably share my Windows app, anymore, which I never saw coming. Maybe someday Microsoft will take it up ten notches in a short span of time and then I'll focus purely on self-hosting.
I note Edge has also become unremovable just last month.
Do not pack the PNut exe, and do sign it?
Does this then keep the anti virus from triggering?
Why wait?
Is SPIN2 truly constrained to the Propeller chips?
If spin2cpp can handle SPIN2, or if necessary can be extended to, then people could choose between on-chip or off-board compiling. Another alternative is to use a P2 emulator (I seem to recall something like that being discussed at one time) for off-board compilation.
Those of us who prefer not to use Windows would appreciate the effort being made earlier, and you might find that something compiled by a Windows friendly compiler would be less likely to be flagged as malware by the anti-virus community.
That seems like a win-win to me.
Also, the longer you wait, the more work will have potentially been wasted when you decide to make the change.
Given how cheap keyboards, mice, and monitors are these days, I think there would be plenty of people who would like a dedicated setup. Their 'massive blobs of spyware' could then be used solely for viewing the documentation. The other alternative is a relatively cheap KVM switch.
I see the SPIN2 compiler written in SPIN2 to be less about pure self-hosting, and more about the provision of choice.
On my Android phone, I can't remove Facebook, of all things.
We will see.
All my work feels like concept development more than final implementation. I can retarget any time. It's just easiest to keep working this way, for now.
I know monitors and keyboards are cheap, but desk space is not. And field portability is important. I think we will always need tools that run on portable big-OS devices, because that is what people need the option of using.
There are a few things we've talked about within Parallax, like how come there is no USB class for turning your laptop/PC/phone (USB host) into a terminal display with pointer and keyboard controls (for the USB device)? I mean, it could be sandboxed and made harmless to the host machine. It would be a nice, generic means of system interfacing, providing display, input, file storage, and internet access. I think the reason this does not exist is because it gets people around the big, branded OS monstrosities that the vendors don't want you bypassing. It cuts them out of the spyware opportunity. I guess the closest we can get, which is even superior in some ways, is a web-page serving system that gets to use your host machine as its display, keyboard, etc. We've been talking about that, too, but we need to learn how to approach that goal.
LOL. You are probably on the right track. Devices now seem primarily intended to be used only to consume from controlled providers, which generates even more income, not to be able to produce and distribute. For the average Joe's they don't care because they only consume but for actual developers this is becoming a limitation. It will be very interesting when Apple moves from x86 to ARM to see how things end up with real (former?) personal computers too. Thankfully Linux still exists.
It's even worse (or insiduous) than that: at least on W 7 and W 8.1' Windows Update, before allowing it to install, I'd clicked the blueish "further information"-link (MS knowledge base article KB4567409):
Under "Installation information", it's clearly stated the following: "To keep your browser secure and up to date, you are asked to accept automatic updates. By clicking Accept and get started you enable Microsoft Edge to update automatically so that you can always have the latest improvements. These updates are independent of your Windows update settings.".
I.O.W.: you must swallow a living "Ferocactus echidne"(https://en.wikipedia.org/wiki/Ferocactus_echidne), thorns included, without cutting, chewing, nor complaining!
21th Century justice, maybe...
Apple has already changed cores once, so this change will be largely invisible to users.
Apple will have tuned whatever core they use, to emulate other cores with little effort.
If you want to avoid the big-OS syndrome, and get an agile user display, things like this Wio-Terminal exist, for a quite well priced $29.00
That could manage P2 debug support on 2 pins.
https://www.seeedstudio.com/Wio-Terminal-p-4509.html $29, 320x240 terminal