Discuss Scratch
- Discussion Forums
- » Advanced Topics
- » ~tosh~ public beta
- jokebookservice1
-
1000+ posts
~tosh~ public beta
You shouldn't be assuming consent, instead you should ask - then do.1. That is a problem to address later…But CORS will be a problem for you when you try and find out what the user has made? Unless you just want them to download and then reupload the project?I'm iFraming it 6 months later, and no open source
Also, I think you might need to ask blob's permission.
2. I did and if they say know I will take tosh off of it.
- card100
-
1000+ posts
~tosh~ public beta
I like to assume. Plus I'm only iframing it. I'm not hosting the code myself.You shouldn't be assuming consent, instead you should ask - then do.1. That is a problem to address later…But CORS will be a problem for you when you try and find out what the user has made? Unless you just want them to download and then reupload the project?I'm iFraming it 6 months later, and no open source
Also, I think you might need to ask blob's permission.
2. I did and if they say know I will take tosh off of it.
I sent an email to blob8108 so hopefully they give an answer.
Last edited by card100 (Dec. 21, 2016 17:01:51)
-card100
- JonathanSchaffer
-
1000+ posts
~tosh~ public beta
this topic was on the third page.Why the bump? bump
club penguin is kil
- mobluse
-
100+ posts
~tosh~ public beta
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
I would like to report some issues with Tosh, but I still think it's a very useful and important program.
`a is shown in the editor as à, ´a as á, ¨a as ä, but the strings work as they should (I use Swedish keyboard).
When you loaded “filename (4)” and saves, it becomes “filename (4) (1)” instead of “filename (5)”.
If you accidentally enter an infinit loop, you can often not stop, and after a while you get a message from Chrome about closing the tab or wait. To wait doesn't help. If you hadn't saved before you lose your changes to the file.
There should be some keyboard shortcuts for Yes, No, and All when searching. Now, you have to reach for your mouse.
One should be able to show or hide variables while running.
.
A procedure-argument should have priority as an r-value if it has the same name as a variable.
When you mark text and press ‘“’, the marked text is not replaced by the double quote, but is still there.
When you save a file with an empty variable-watcher in Tosh and load again in Scratch, it is shown as zero ('0').
Sometimes when you delete a variable the variable-watchers are still there, but it says ”unknown var: …". You have to go into the JSON-file and edit.
If I chose Open and load a file, sometimes the contents is not updated. I have to reload Tosh.
I would like to report some issues with Tosh, but I still think it's a very useful and important program.
`a is shown in the editor as à, ´a as á, ¨a as ä, but the strings work as they should (I use Swedish keyboard).
When you loaded “filename (4)” and saves, it becomes “filename (4) (1)” instead of “filename (5)”.
If you accidentally enter an infinit loop, you can often not stop, and after a while you get a message from Chrome about closing the tab or wait. To wait doesn't help. If you hadn't saved before you lose your changes to the file.
There should be some keyboard shortcuts for Yes, No, and All when searching. Now, you have to reach for your mouse.
One should be able to show or hide variables while running.
.
A procedure-argument should have priority as an r-value if it has the same name as a variable.
When you mark text and press ‘“’, the marked text is not replaced by the double quote, but is still there.
When you save a file with an empty variable-watcher in Tosh and load again in Scratch, it is shown as zero ('0').
Sometimes when you delete a variable the variable-watchers are still there, but it says ”unknown var: …". You have to go into the JSON-file and edit.
If I chose Open and load a file, sometimes the contents is not updated. I have to reload Tosh.
Last edited by mobluse (Dec. 31, 2016 13:01:01)
- Jonathan50
-
1000+ posts
~tosh~ public beta
No, the GNU General Public License allows you to sell programs under it and doesn't allow you to stop others from doing so (the FSF, authors of the GPL, consider software you can't sell non-free). And no, modifications of the Scratch Source Code are subject to the same non-profit licence. However, tosh uses no code from Scratch.
Edit: as long as it's clear your customers how to get the source for the software your selling.
Last edited by Jonathan50 (Jan. 3, 2017 22:47:35)
Not yet a Knight of the Mu Calculus.
- mobluse
-
100+ posts
~tosh~ public beta
I have discovered another issue. If you download the project and_or, and then open it in Tosh, it won't run correctly because Tosh seems to replace some single character procedure names with “_1”.
This projects also seems to use some custom blocks, but they can be fixed to standard Scratch by e.g.:
add <~A = “true” and ~B = “true”> to DATA STACK
add <~A = “true” or ~B = “true”> to DATA STACK
I would prefer if you can have the same variable names in Tosh as you can in Scratch, e.g. <, =, >, +, -, *, /, and “ should be possible names of procedures. If this is not possible they should be converted to e.g. .LT., .EQ., .GT., .ADD., .SUB., .MUL., .DIV., and .DQ. (inspired by FORTRAN).
I changed one procedure so that it could be used in Phosphorus:
define-atomic .
set ~A to item last of DATA STACK
delete last of DATA STACK
replace item last of OUTPUT with (join (item last of OUTPUT) (~A))
say ~A for 2 secs
say ”" for 0.5 secs
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
This projects also seems to use some custom blocks, but they can be fixed to standard Scratch by e.g.:
add <~A = “true” and ~B = “true”> to DATA STACK
add <~A = “true” or ~B = “true”> to DATA STACK
I would prefer if you can have the same variable names in Tosh as you can in Scratch, e.g. <, =, >, +, -, *, /, and “ should be possible names of procedures. If this is not possible they should be converted to e.g. .LT., .EQ., .GT., .ADD., .SUB., .MUL., .DIV., and .DQ. (inspired by FORTRAN).
I changed one procedure so that it could be used in Phosphorus:
define-atomic .
set ~A to item last of DATA STACK
delete last of DATA STACK
replace item last of OUTPUT with (join (item last of OUTPUT) (~A))
say ~A for 2 secs
say ”" for 0.5 secs
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
Last edited by mobluse (Jan. 21, 2017 18:01:28)
- mobluse
-
100+ posts
~tosh~ public beta
I have discovered another problem related to Tosh. When I upload a project saved with Tosh to Scratch some procedures are undefined. The procedures are missing in More Blocks and in the code the procedure heads are replaced by red undefined blocks.
I have a project here that demonstrates the bug:
https://scratch.mit.edu/projects/140624215
The working project with the same version as above is here:
https://scratch.mit.edu/projects/141180588/
One can reproduce the bug by downloading the working project, open it in Tosh https://tosh.tjvr.org/app/ , delete a character, enter it again, save the project, and then upload it to Scratch.MIT.EDU.
I have manually fixed the project in Scratch and have prefixes for procedures and variables in different Sprites so no procedure or variable has the same name as another. The fixed project is here:
https://scratch.mit.edu/projects/137676871/
This renaming doesn't solve this bug. It's always the same procedures that disappears.
I have studied the project.json-file Tosh produces for one of the disappearing functions:
[[“procDef”,“_ask”,[null],[null],false]
and compared with what Scratch Online produces:
[[“procDef”, “_ask”, [], [], false]
All disappearing functions have "[null]“.
I hope this bug gets fixed soon because it's very tedious to have to manually fix the project on Scratch.MIT.EDU each time you upload a new version. I could write a program that fixes it by replacing all ”[null]“ with ”[]".
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
I have a project here that demonstrates the bug:
https://scratch.mit.edu/projects/140624215
The working project with the same version as above is here:
https://scratch.mit.edu/projects/141180588/
One can reproduce the bug by downloading the working project, open it in Tosh https://tosh.tjvr.org/app/ , delete a character, enter it again, save the project, and then upload it to Scratch.MIT.EDU.
I have manually fixed the project in Scratch and have prefixes for procedures and variables in different Sprites so no procedure or variable has the same name as another. The fixed project is here:
https://scratch.mit.edu/projects/137676871/
This renaming doesn't solve this bug. It's always the same procedures that disappears.
I have studied the project.json-file Tosh produces for one of the disappearing functions:
[[“procDef”,“_ask”,[null],[null],false]
and compared with what Scratch Online produces:
[[“procDef”, “_ask”, [], [], false]
All disappearing functions have "[null]“.
I hope this bug gets fixed soon because it's very tedious to have to manually fix the project on Scratch.MIT.EDU each time you upload a new version. I could write a program that fixes it by replacing all ”[null]“ with ”[]".
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
Last edited by mobluse (Jan. 21, 2017 22:44:01)
- mobluse
-
100+ posts
~tosh~ public beta
I've found another issue with Tosh: when I use
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
([_shift v] of [Keyboard v])I need to include a variable _shift also in the current sprite, Thread, otherwise I can't save or run. It seems to work when running.
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
Last edited by mobluse (Jan. 22, 2017 21:41:00)
- bobbybee
-
1000+ posts
~tosh~ public beta
Shameless self-promotion: If anyone wants an example of a large project managed with tosh, https://github.com/bobbybee/ScratchNES might be of interest. Maybe not; it's not a very *good* project :-)
“Ooo, can I call you Señorita Bee?” ~Chibi-Matoran
- Jonathan50
-
1000+ posts
~tosh~ public beta
Try putting quotation marks around “_shift”? I've found another issue with Tosh: when I use([_shift v] of [Keyboard v])I need to include a variable _shift also in the current sprite, Thread, otherwise I can't save or run. It seems to work when running.
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
Not yet a Knight of the Mu Calculus.
- mobluse
-
100+ posts
~tosh~ public beta
I tried that and parenthesis, but it only worked when I defined a sprite-variable with the same name as the sprite-variable in the other sprite. I came up with another way that is better, so I now longer need this, but I thought I should report the bug.Try putting quotation marks around “_shift”? I've found another issue with Tosh: when I use([_shift v] of [Keyboard v])I need to include a variable _shift also in the current sprite, Thread, otherwise I can't save or run. It seems to work when running.
My browser / operating system: Windows NT 10.0, Chrome 55.0.2883.87, Flash 24.0 (release 0)
- gtoal
-
1000+ posts
~tosh~ public beta
https://github.com/bobbybee/ScratchNES might be of interest. Maybe not; it's not a very *good* project :-)Given the way you've managed the emulation into separate files per instruction/addressing mode, you might consider using them as templates for a static binary translator instead of an emulator. It could double the emulation speed if you're lucky. Just pick your ROM carefully. (no self-modifying code etc) Shameless self-promotion: If anyone wants an example of a large project managed with tosh,
G
- bobbybee
-
1000+ posts
~tosh~ public beta
Static recompilation for the NES has some… interesting challenges. http://andrewkelley.me/post/jamulator.html explored this in great detail, although a few of his challenges are not so; see my response: https://rosenzweig.io/solving-bit-magic.htmlhttps://github.com/bobbybee/ScratchNES might be of interest. Maybe not; it's not a very *good* project :-)Given the way you've managed the emulation into separate files per instruction/addressing mode, you might consider using them as templates for a static binary translator instead of an emulator. It could double the emulation speed if you're lucky. Just pick your ROM carefully. (no self-modifying code etc) Shameless self-promotion: If anyone wants an example of a large project managed with tosh,
G
“Ooo, can I call you Señorita Bee?” ~Chibi-Matoran