Discuss Scratch

NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

kenny2scratch wrote:

NoMod-Programming wrote:

Jonathan50 wrote:

Blaze349 wrote:

Does S 3.0 make this obsolete?
Not on devices where you can't get a fully Scratch-3.0 compatible browser.
Just asking, what are some non-scratch-3 compatible browsers?
Many versions of IE
Also, any browser with JavaScript disabled.

The main reason I think Whiskers will still be cool is I can't really see how there will be a 3.0 offline editor.
Keep going!
Electron could be used to make an offline editor. But Whiskers development is starting again. I'm rebuilding it in NuScratch, and trying to make sure I have good performance by testing it in a VM on my Macbook Pro (2.4Ghz processor) with the execution cap set to 15%, 2 MB video memory, 128 MB of video memory, and Debian with LXDE. I'm also re-doing the UI to work with more native methods to squeak for drawing, and to decrease the size of the ScratchSkin dictionary. I'm not completely done with the UI for now, but for the most part, it's starting to look a lot like Scratch 2.0. After that, I'll implement most of the blocks, except for custom blocks (because I have to think about how I'm going to re-implement them for a bit more speed than the horrible implementation of original Whiskers). At that point, I'm going to finally work on a plugin to *at least* convert an svg to a bitmap for Whiskers to use. But from what I can tell, there is an implementation of SVG support for this version of Squeak, so I'll have to test that out. Once that is done, I'm going to implement proper WAV decoding, whether through a plugin or in Squeak (Note to self: http://www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.c).

EDIT: Current alpha link (No new blocks or anything, just the UI): Clicky!

Last edited by NoMod-Programming (July 15, 2017 04:56:52)


Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
kenny2scratch
Scratcher
500+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

NoMod-Programming wrote:

-snippety snip-
Electron could be used to make an offline editor. But Whiskers development is starting again. I'm rebuilding it in NuScratch, and trying to make sure I have good performance by testing it in a VM on my Macbook Pro (2.4Ghz processor) with the execution cap set to 15%, 2 MB video memory, 128 MB of video memory, and Debian with LXDE. I'm also re-doing the UI to work with more native methods to squeak for drawing, and to decrease the size of the ScratchSkin dictionary. I'm not completely done with the UI for now, but for the most part, it's starting to look a lot like Scratch 2.0. After that, I'll implement most of the blocks, except for custom blocks (because I have to think about how I'm going to re-implement them for a bit more speed than the horrible implementation of original Whiskers). At that point, I'm going to finally work on a plugin to *at least* convert an svg to a bitmap for Whiskers to use. But from what I can tell, there is an implementation of SVG support for this version of Squeak, so I'll have to test that out. Once that is done, I'm going to implement proper WAV decoding, whether through a plugin or in Squeak (Note to self: http://www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.c).

EDIT: Current alpha link (No new blocks or anything, just the UI): Clicky!
Sweet! If there's any way I can help, I'd be glad to…~~~~

post brought to you by the preview links bug and previously the uploads site bug. 看一下中文 Scratch 維基想參加?請參考這頁
Join the Scratch Wiki!
Made by Scratchers, for Scratchers, since December 6, 2008

NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

kenny2scratch wrote:

NoMod-Programming wrote:

-snippety snip-
Electron could be used to make an offline editor. But Whiskers development is starting again. I'm rebuilding it in NuScratch, and trying to make sure I have good performance by testing it in a VM on my Macbook Pro (2.4Ghz processor) with the execution cap set to 15%, 2 MB video memory, 128 MB of video memory, and Debian with LXDE. I'm also re-doing the UI to work with more native methods to squeak for drawing, and to decrease the size of the ScratchSkin dictionary. I'm not completely done with the UI for now, but for the most part, it's starting to look a lot like Scratch 2.0. After that, I'll implement most of the blocks, except for custom blocks (because I have to think about how I'm going to re-implement them for a bit more speed than the horrible implementation of original Whiskers). At that point, I'm going to finally work on a plugin to *at least* convert an svg to a bitmap for Whiskers to use. But from what I can tell, there is an implementation of SVG support for this version of Squeak, so I'll have to test that out. Once that is done, I'm going to implement proper WAV decoding, whether through a plugin or in Squeak (Note to self: http://www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.c).

EDIT: Current alpha link (No new blocks or anything, just the UI): Clicky!
Sweet! If there's any way I can help, I'd be glad to…~~~~
Do you know any programming languages other than scratch? If so, I could use some help transcoding www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.cthis file (from my earlier post) to a language that is a bit easier for me to transcribe to Squeak. It doesn't need to be well-commented, but a couple of notes here and there would definitely help in transcribing it to squeak.
If you don't know any languages other than scratch (or are having a hard time transcribing the file to another language), then I'm always in need to beta (alpha?) testers. You can use the instructions here to install it, using the alpha link I posted earlier, and let me know of any inconsistencies you can find. If you want the all-in-one file to run Whiskers, I can provide it, but you might need to wait a few hours until I can upload it.

-NoMod(-Programming)

Last edited by NoMod-Programming (July 15, 2017 18:35:12)


Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
eribetra
Scratcher
100+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

NoMod-Programming wrote:

Electron could be used to make an offline editor. But Whiskers development is starting again. I'm rebuilding it in NuScratch, and trying to make sure I have good performance by testing it in a VM on my Macbook Pro (2.4Ghz processor) with the execution cap set to 15%, 2 MB video memory, 128 MB of video memory, and Debian with LXDE. I'm also re-doing the UI to work with more native methods to squeak for drawing, and to decrease the size of the ScratchSkin dictionary. I'm not completely done with the UI for now, but for the most part, it's starting to look a lot like Scratch 2.0. After that, I'll implement most of the blocks, except for custom blocks (because I have to think about how I'm going to re-implement them for a bit more speed than the horrible implementation of original Whiskers). At that point, I'm going to finally work on a plugin to *at least* convert an svg to a bitmap for Whiskers to use. But from what I can tell, there is an implementation of SVG support for this version of Squeak, so I'll have to test that out. Once that is done, I'm going to implement proper WAV decoding, whether through a plugin or in Squeak (Note to self: http://www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.c).

EDIT: Current alpha link (No new blocks or anything, just the UI): Clicky!
Wow! I can't beleive you actually ported the entire Scratch program to Squeak 5.0!
How did you do that?

Check out Blockode, the most recent Scratch 1.4 mod!
Also check out Five Nights at eribetra:
NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

eribetra wrote:

NoMod-Programming wrote:

Electron could be used to make an offline editor. But Whiskers development is starting again. I'm rebuilding it in NuScratch, and trying to make sure I have good performance by testing it in a VM on my Macbook Pro (2.4Ghz processor) with the execution cap set to 15%, 2 MB video memory, 128 MB of video memory, and Debian with LXDE. I'm also re-doing the UI to work with more native methods to squeak for drawing, and to decrease the size of the ScratchSkin dictionary. I'm not completely done with the UI for now, but for the most part, it's starting to look a lot like Scratch 2.0. After that, I'll implement most of the blocks, except for custom blocks (because I have to think about how I'm going to re-implement them for a bit more speed than the horrible implementation of original Whiskers). At that point, I'm going to finally work on a plugin to *at least* convert an svg to a bitmap for Whiskers to use. But from what I can tell, there is an implementation of SVG support for this version of Squeak, so I'll have to test that out. Once that is done, I'm going to implement proper WAV decoding, whether through a plugin or in Squeak (Note to self: http://www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.c).

EDIT: Current alpha link (No new blocks or anything, just the UI): Clicky!
Wow! I can't beleive you actually ported the entire Scratch program to Squeak 5.0!
How did you do that?
Don't credit *me* for this, credit Tim Rowledge. He did the bulk of the work on his amazing NuScratch project, which ports scratch 1.4 to Squeak 5.0. I've tried that before on my own, and it's no easy project. All I'm doing is changing the UI and (if it is possible) compiling a few plugins to make some features work.

Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
eribetra
Scratcher
100+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Oh! I'm going to check NuScratch and see if it works using Blockode! Thanks!

Last edited by eribetra (July 15, 2017 21:26:45)


Check out Blockode, the most recent Scratch 1.4 mod!
Also check out Five Nights at eribetra:
eribetra
Scratcher
100+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

OOH! NuScratch is just Scratch converted into Squeak 5.0, and you just worked on the interface! NOW I know it!


But now I'll have to code it all again…

Last edited by eribetra (July 15, 2017 22:12:29)


Check out Blockode, the most recent Scratch 1.4 mod!
Also check out Five Nights at eribetra:
eribetra
Scratcher
100+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Also, can you pass the link to the NuScratch you're using? (it needs to be the NuScratch .image, now the Whiskers one) Because every version of NuScratch running on Squeak 5.1 shows up an error about fonts.

Check out Blockode, the most recent Scratch 1.4 mod!
Also check out Five Nights at eribetra:
NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

eribetra wrote:

Also, can you pass the link to the NuScratch you're using? (it needs to be the NuScratch .image, now the Whiskers one) Because every version of NuScratch running on Squeak 5.1 shows up an error about fonts.
I used Monticello to install NuScratch on a fresh Squeak 5.0 image. If you want me to, I can create an image for you to use with only NuScratch on it, which would include the sources and changes file.

Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
Jonathan50
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

You could make a Squeak extension instead of porting the C to Squeak. And I do not believe the copyright is compatible with the GNU GPL anyway, because it requires 1) you don't sell it 2) “this permission notice appear in supporting documentation,” 3) “the names of Stichting Mathematisch Centrum or CWI not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission”

Also, does Squeak 5.0 raise the system requirements from whatever version of Squeak the Scratch Team forked?

Edit: Oh, I forgot. Almost two years ago you told me it's under the Scratch Source Code License and not the GNU GPL If you want to use it directly in Whiskers you'll just have to check the text of the Scratch license and make sure it's compatible with the license of the C program, and be sure to show the permission notice

Last edited by Jonathan50 (July 15, 2017 23:37:47)


Not yet a Knight of the Mu Calculus.
eribetra
Scratcher
100+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

NoMod-Programming wrote:

eribetra wrote:

Also, can you pass the link to the NuScratch you're using? (it needs to be the NuScratch .image, now the Whiskers one) Because every version of NuScratch running on Squeak 5.1 shows up an error about fonts.
I used Monticello to install NuScratch on a fresh Squeak 5.0 image. If you want me to, I can create an image for you to use with only NuScratch on it, which would include the sources and changes file.

Ok! I would like that! (I will give credit to you and Tim)

If you can convert an .image file, it's even better: ericdutra.com/blockode.html

(Sorry for advertising)

Last edited by eribetra (July 15, 2017 23:22:52)


Check out Blockode, the most recent Scratch 1.4 mod!
Also check out Five Nights at eribetra:
NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Jonathan50 wrote:

You could make a Squeak extension instead of porting the C to Squeak. And I do not believe the copyright is compatible with the GNU GPL anyway, because it requires 1) you don't sell it 2) “this permission notice appear in supporting documentation,” 3) “the names of Stichting Mathematisch Centrum or CWI not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission”

Also, does Squeak 5.0 raise the system requirements from whatever version of Squeak the Scratch Team forked?
I can't find any sources on the actual system requirements for either version of Squeak (but the scratch 1.4 download page says it runs on windows 2000 or newer), but based on the test I ran with Whiskers on a VM with a (technically) 400Mhz processor and 128MB ram, it should run fine on most hardware.

eribetra wrote:

NoMod-Programming wrote:

eribetra wrote:

Also, can you pass the link to the NuScratch you're using? (it needs to be the NuScratch .image, now the Whiskers one) Because every version of NuScratch running on Squeak 5.1 shows up an error about fonts.
I used Monticello to install NuScratch on a fresh Squeak 5.0 image. If you want me to, I can create an image for you to use with only NuScratch on it, which would include the sources and changes file.

Ok! I would like that! (I will give credit to you and Tim)

If you can convert an .image file, it's even better: ericdutra.com/blockode.html

(Sorry for advertising)

Alright, here's the download: https://drive.google.com/open?id=0B6FRCf6PuzM9SUd0djdycE1SZDg
Please note, though, that this build is unofficial and does not include GPIO extensions. Also, when saving for the end-user, it will create a new image file called NuScratch{current date}.image. You can rename that file after saving it.

Last edited by NoMod-Programming (July 16, 2017 00:02:55)


Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
Jonathan50
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

OK, thanks. Do you know what Squeak version the official Scratch 1.4 VM is forked from?

I tried Whiskers using @infinitytec's link above, it works great. So what I'm wondering is, I know that the Scratch 1.4 in the Raspbian repository is NuScratch, but do Debian and Ubuntu use NuScratch too? (The Scratch 1.4 download page says to use the Scratch from the Debian/Ubuntu repositories)

I want to know because it uses Squeak 4.10.2, and while most mods (BYOB, BlocKode and probably Panther too) result in a blank, white window when I try to run them, the Whiskers image infinitytec linked above works perfectly (Is it a NuScratch based image?)

Edit: Can't be right, the Scratch 1.4 image of GitHub works fine even though it's Squeak 4.10.2. And that's actually the same image… Now I'm confused.

Last edited by Jonathan50 (July 16, 2017 00:21:46)


Not yet a Knight of the Mu Calculus.
NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Jonathan50 wrote:

OK, thanks. Do you know what Squeak version the official Scratch 1.4 VM is forked from?

I tried Whiskers using @infinitytec's link above, it works great. So what I'm wondering is, I know that the Scratch 1.4 in the Raspbian repository is NuScratch, but do Debian and Ubuntu use NuScratch too? (The Scratch 1.4 download page says to use the Scratch from the Debian/Ubuntu repositories)

I want to know because it uses Squeak 4.10.2, and while most mods (BYOB, BlocKode and probably Panther too) result in a blank, white window when I try to run them, the Whiskers image infinitytec linked above works perfectly (Is it a NuScratch based image?)
  1. The official Scratch 1.4 image is based off of Squeak 2.8, but with many aspects of it removed to make for a smaller image.
  2. Debian and Ubuntu do not use NuScratch, but the official Scratch release
  3. The whiskers image infinitytec linked is not a NuScratch based image, and I honestly have no idea what causes either a blank white or black window on some operating systems. I know that in Whiskers, though, the change occured some time between version 20 and 21, but I don't know anything other than that.

Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
Jonathan50
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Okay, thanks. So the official Scratch image is compatible with both 2.8 and 4.10, but most Scratch modifications only work 2.8, and only NuScratch images work with 5.0?

Not yet a Knight of the Mu Calculus.
Jonathan50
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Just to confuse me even more, I can't even run my own Scratch 1.4 mod (2012), and this time I get a black screen, not a white screen!

Last edited by Jonathan50 (July 16, 2017 00:31:30)


Not yet a Knight of the Mu Calculus.
NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

Jonathan50 wrote:

Okay, thanks. So the official Scratch image is compatible with both 2.8 and 4.10, but most Scratch modifications only work 2.8, and only NuScratch images work with 5.0?
Yup

Jonathan50 wrote:

Just to confuse me even more, I can't even run my own Scratch 1.4 mod (2012), and this time I get a black screen, not a white screen!
Yup. I don't know exactly what causes this bug, but it probably has something to do with either the ScratchFrameMorph>startUp method or any of the methods called initially by it. It probably isn't because of the VM because the original Scratch 1.4 image still works, but I don't know how to pinpoint it. Like I said earlier, in the original Whiskers, the most recent working image is from version 20. After that, whatever changes I made to create version 21 caused the white/black screen error.

Completely unrelated, but I just found out that Squeak 5.0 has support for zip files, and that there is a package called SVGMorph that I might be able to get working with a couple changes and modifications. And if I can get that wav file converting code from earlier translated to squeak, there *might* be full scratch 2.0 loading support (minus the challenges of implementing the blocks, which might use placeholders for now until all the code gets ported over)

EDIT: I think Squeak 5.0 has support for the WAV file format that didn't work in the version from scratch 1.4 (and original Whiskers). I'm going to boot into OS X to test it because my my ubuntu system claims that it cant find /dev/dsp when trying to play audio through squeak there.
EDIT 2: YES IT DOES! That means that all I need to implement is SVG support and reading from zip files, and I'm almost ready for a beta!

Last edited by NoMod-Programming (July 16, 2017 02:36:13)


Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
kenny2scratch
Scratcher
500+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

NoMod-Programming wrote:

-snip-
Do you know any programming languages other than scratch? If so, I could use some help transcoding www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.cthis file (from my earlier post) to a language that is a bit easier for me to transcribe to Squeak. It doesn't need to be well-commented, but a couple of notes here and there would definitely help in transcribing it to squeak.
If you don't know any languages other than scratch (or are having a hard time transcribing the file to another language), then I'm always in need to beta (alpha?) testers. You can use the instructions here to install it, using the alpha link I posted earlier, and let me know of any inconsistencies you can find. If you want the all-in-one file to run Whiskers, I can provide it, but you might need to wait a few hours until I can upload it.

-NoMod(-Programming)
Programming languages I (fully) know include Python, MSDOS (aka Windows Batch), JavaScript, and PHP. I learn bits and bobs of other languages but not enough to use them well, so treat that list as accurate. I suck at C(++/#) and Java though, so don't ask me for help with that? But I'm totally fine with the aforementioned languages.~~~~

post brought to you by the preview links bug and previously the uploads site bug. 看一下中文 Scratch 維基想參加?請參考這頁
Join the Scratch Wiki!
Made by Scratchers, for Scratchers, since December 6, 2008

NoMod-Programming
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

kenny2scratch wrote:

NoMod-Programming wrote:

-snip-
Do you know any programming languages other than scratch? If so, I could use some help transcoding www.cs.columbia.edu/~gskc/Code/AdvancedInternetServices/SoundNoiseRatio/dvi_adpcm.cthis file (from my earlier post) to a language that is a bit easier for me to transcribe to Squeak. It doesn't need to be well-commented, but a couple of notes here and there would definitely help in transcribing it to squeak.
If you don't know any languages other than scratch (or are having a hard time transcribing the file to another language), then I'm always in need to beta (alpha?) testers. You can use the instructions here to install it, using the alpha link I posted earlier, and let me know of any inconsistencies you can find. If you want the all-in-one file to run Whiskers, I can provide it, but you might need to wait a few hours until I can upload it.

-NoMod(-Programming)
Programming languages I (fully) know include Python, MSDOS (aka Windows Batch), JavaScript, and PHP. I learn bits and bobs of other languages but not enough to use them well, so treat that list as accurate. I suck at C(++/#) and Java though, so don't ask me for help with that? But I'm totally fine with the aforementioned languages.~~~~
Actually, I just found out that Squeak 5 has built in support for the WAV files that I had problems with before. But I can still use help with making Whiskers look more like Scratch 2.0. I just need to find inconsistencies between both versions, so if you can report any that you can find, that would be great!

Long-since moved on from Scratch, if you need to find all my posts, search this in google: 3499447a51c01fc4dc1e8c3b8182b41cb0e88c67
Jonathan50
Scratcher
1000+ posts

Whiskers: Scratch 2.0 for Incompatible Devices

You could change IF to IF THEN to match Scratch 2.0.

Not yet a Knight of the Mu Calculus.

Powered by DjangoBB