Git Product home page Git Product logo

scratch's Introduction

Scratch

###Scratch releases

  • 2015-11-11 in NuScratch11112015.tgz
  • 2016-01-15 in NuScratch15012016.tgz
  • 2016-04-25 in NuScratch25042016.tgz
  • 2016-05-02 in NuScratch02052106.tgz
  • (change date coding to more rational yyymmdd)
  • 2016-08-24 in NuScratch20160824.tgz
  • 2016-09-15 inNuScratch20160915.tgz
  • 2016-10-21 in NuScratch20161021.tgz

###Comparison Videos Showing performance changes over time for the Pi and a comparison with an i5 MacBook running 'original' Scratch.

scratch's People

Contributors

ghollingworth avatar petermortensen avatar timrowledge avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

scratch's Issues

Popup menu gets unwanted bubble help?

ghp reports-
On a script element, rightclick mouse to get the ‘help/duplicate/delete-Popup.
In win-scratch-1.4, the popup appears.
In beta-scratch, in addition to the popup there is a bubble popup ‘Enter text to narrow selection down to matching items’.

nuscratch8, sporadic exits

In some situations, sporadic, not well reproduceable, the programs exits.
'Exit' means: window closed, process is away, no error popups, no dialogs or alike.
Found this when create variable (global), create same name again (local), you get a dialog: variable already exists, when pressing ok then scratch exits.
Had this also on startup, when remote sensor network is enabled, you get a dialog like 'sensor network enabled', when pressing ok then scratch dies.
This is happening not each time. Looked for logfiles or dumps, but could not find any.

Input events handling slow and/or unreliable

It seems that input events are either missed occasionally or get very delayed. Users often have to click twice or more to get a button to respond. D-Clicks frequently un-noticed.

String->Number conversion issues?

ghp reports -
I have a scratchClient (remote sensor protocol), sending infrared control signals as string like ’11000000000011′. I convert this to a numeric value in scratch. To doublecheck, the following sample uses prefix AB to ensure the value is a string type. The quotes in the folling sample are only for clarification, not enterd in scratch.

create two variables a, b
set a=’AB11111111111111111111111111111111111′
set b=0
if letter(14 of a) = ’1′
change b by 1

in raspbian-scratch-1.4, the result is b==1
in beta-scratch, result is b=0. When I replace the if-statement by ‘if 1=1′, the increment is performed. Seems to be a char to int autoconversion problem.

mouse position x/y watchers 'readout pane' morph not displaying/updating correctly

Intermittently - how I hate that - the morph 'readout pane' is drawn over by the #clearLibrary method (typically when opening a new project, though occasionally when changing view mode) and subsequently they x/y value displays appear to be floating on their own instead of attached to the curvy frame.

The problem seems like it must be something to do with damage reporting. Dragging a menu (say, the language list) over the are will correctly redraw damaged areas. Altering the window size will correct it. Opeing the halo will correct it. It doesn't happen in a development situation where the Scratch pane is not filling the screen. It doesn't always happen; in fact it sometimes feels like there is a random small number being secretly generated that is well sized to create maximum debugging frustration.

I can't find a solution right now. It's not a huge issue functionally and may not even appear for some users. Grrr.

Possibly add font rendering scale value to .ini file

Some users find the default font sizes a poor choice. IT might be practical to add a new keyword to the .ini file to set a scale factor that would have to be composted with the language file RenderScale value.

PaintCanvas gridding needs reworking

The painter wants to grid the cursor location to handle the scaling whilst painting. OldScratch did nasty things to HandMorph. Should try to do nicer.
Old notes from Evernote stack -
PaintCanvas wants to keep the pointer position on a grid if the scale is > 1.
See PaintCanvas>mouseEnter:, mouseLeave: & exitPaintEditor, plus old Scratch code in HandMorph.
See also HandMorph>gridTo:origin:
How do we do it now? Maybe in PaintCanvas>step instead of gridPointRaw we can put the grid on the canvas and extend screenToCanvas: to grid things. That would remove any need for grid related methods in HandMorph> ‘Scratch-extensions'

nuscratch8, costume size in px and kb is scrambled

When loading a sprite, size in px and kB is displayed correctly. When editing the sprite, the display gets scrambled.
There wasa similiar problem in earlier releases, but there the display was scrambled always.
2014-08-22-165002_1824x984_scrot

nuscratch 8, costume editor, default slider values

open costume editor
expected: the zoom level is second level; sliders are prox 2/3 of screen size, centered
current: sliders are prox 1/10 of screen size, positioned left/top

Problem: slider size is not adjusting with zoom level and initial viewport.

NoteSelector widget (from 'play note' tile) needs major rework

The ScratchNoteSelectorMorph is very out of date wrt events. Some pretty serious reworking will be needed to clean it up.

See ScratchNoteSelector, particularly #startUp and compare with the PianoKeyboardMorph.
One problem is that the selector is expected to behave like a popup menu; be opened with a click on the ExpressionArgWithMenuMoprh, only start working after the mouse button is released, then act modally. It simply isn't doing that right now.

Simple fudge to get it functioning at all is to remove the 'Sensor waitNoButton' from #startUp so that it at least doesn't bugger the event queue.

nuscratch8: import project

Had a nice project with some sprites. Imported this to an almost empty project. Import completed, but sprites in 'object inventory' had only small white rectangles displayed. When I pressed 'file open' (wanted to load project directly to validate the sprites), the images got refreshed and displayed correctly.

rightclick on variable in presentation mode

have a variable displayed on stage; switch to presentation mode; rightclick on variable --> a popup appears. "watchermorph-->does not understand."
Also Mouse middle click brings up the 'fancy bubbles'.

help pages not working

ghp reports -
Menu help/help page does not work.
In raspbian-scratch-1.4, dillo appears with help content.
In beta-scratch, nothing happens.

Variable-slider jumps back to 0

 Richard Hayler says: 26th May 2014 at 11:01 pm

There’s a minor bug when you use a slider to set a variable: when set to a non-zero value and you click on the slider knob, it resets the variable straight back to 0.

...
Nope, the current version of Scratch 1.4 for Raspbian, the Windows and Mac versions do not behave in this way. What I’m talking about is when you’ve already set a variable to a value using the slider (say 15) and then you click on the slider knob to change it. With other versions of Scratch you can adjust the value in either direction (e.g to 14 or 16). With this new beta, the value jumps back to zero.

tim noted -
Yeah, I see what you mean. You can drag the slider ok but next time you drag it, it jumps back to 0. Never noticed that before. Good catch.

(Unicode) Characters received from outside broadcast may not be handled well

by ghp » Thu May 01, 2014 12:08 pm
bug or feature ?

Hello,
starting from a thread viewtopic.php?f=77&t=76056 I did some examinations on the handling of code pages in remote sensor protocol.

I send a 'broadcast "test_äöüÄÖÜß"' from remote to scratch which uses popular german umlaut characters. Basic is the encoding nneded which is utf-8 for these chars. In scratch, these chars are not decoded correctly, but same in windows scratch 1.4.
I double checked the bytes sent on the socket by a simple socket server implementation.

The scratch wiki page says:
Words and strings are encoded in UTF-8. ...
Here are the two most useful message types:
broadcast

The other way round from scratch to scratchClient, the special chars are encoded correctly.

Project 'dirty flag' set when no changes made?

SimpleSi reports -
'simplesi wrote:
File open asked me if I wanted to save current project when I hadn’t done anything at all

Also I had to click File then Open then Open again to get it work

Tracking the 'dirty' flag is fairly tricky to get exactly right and it's probably a bit enthusiastic right now. Probably better than missing and throwing away a project?'

bubble-popup from clicking on operator block does not disappear correctly

ghp reports-
drag an operator (keep it simple, take (1+1)) to script area.
When doubleclicking aka executing this operator (without a ‘hat’), the result is displayed in a bubble popup.
In win-1.4-scratch, move the operator and the popup disappears.
In beta-scratch, move the operator and the popup does not disappear.

Script starting is complex and inefficient

Complex mechanism for firing up scripts.
Events with string names are passed around and strings compared (sigh)
Lots of stupid isKindOf: nonsense to find relevant tiles to check for scripts.

See ScratchStageMorph>broadcastEventNamed:with:

ScratchSpriteMorph>eventReceived: :-(

Language election menu displays only short name

ghp reports-
Language selection display.
In Win-scratch-1.4, the language selection menu displays complete language names like ‘Deutsch’ or ‘Francais’
In beta-1.4, it is ‘de’ and ‘fr’. Only English is complete.

Character set display errors?

ghp wrote:
The character set problem (german umlaut), the error popups now and then, the 'letter i from text' conversion and not alpha backgrounds should be fixed till then, all the others I have seen here are lower severity.

Character set issues are probably some problems with unicode handling, which is always such fun.
alpha backgrounds? That doesn't seem familiar?

nuscratch5: import project does not update sprite inventory correctly

Load a project
Import a project

The inventory has sliders bottom and right, and the imported sprites is displayed as a white rectangle. (not correct)
The costumes of this 'fancy thing' are correct.
When clicking into the window, the sliders disappear (correct)
When e.g. editing this costume, leaving editor, the sprite inventorty is updated correctly.
import

popup menu for event names: 'gaps' allow dragging of menu

ghp reports -
'Minor problem:
In 'control' there are the 'when I receive' blocks.
Select one and drag to script area.
open the popup, usually populated with 'new' and available signal names. If you move the mouse over a name or 'new', the entry is highlighted. There is a small gap between the highlighted ares. Drag the popup in the gaps (also possible in the frame around it), and you can move it away. In scratch 1.4, clicking in the gap areas closes the popup.
'

scratch sensor connection, float values in wrong format

Scenario: in a loop, I calculate float values in a global variable and send them to scratchClient.

Instead of receiving decimal values, I receive strings like "(121856/5)".
Works in 1.4-scratch.
Tested with nuscratch5.

There was a similiar problem with the display of variables on stage in early days of nuscratch.

Missing mouse-clicks

Seems to not detect a lot of mouse-clicks (missing at least 1 in 3) which might explain the double-click failure as well
(I do all my work remoting in using VNC but not noticed this behaviour with standard Scratch)

Sprite imports with wrong alpha values

ghp reports -
Import sprite, things, banana.
win-scratch-1.4, the background is alpha.
beta-scratch-1.4, the background is not ‘alpha’, but white.
Clearly visible if you have a non-white stage.
Also in object palette, the background is displayed white.

CameraPlugin colour mapping is Smurfish

Since jan 14 the v4linux support has been there (don't forget
sudo apt-get update && sudo apt-get install v4l-utils
sudo apt-get update && sudo apt-get upgrade
modprobe bcm2835 v4l2
)
but the colour map seems to swap green and blue or whatever and everyone looks like a Smurf. Not a happy sight

Variable display with too many decimal places

ghp reports-
weird behaviour in both scratch versions.

create variable, display on stage. Expected is to have at most 1 decimal place displayed.
So if you set a=1, and then repeat 5 times, a = (a / 2) the display is ’0′.
But if you run a block set a = 0.0312, it is displayed as 0.0312 on stage. Cool.

OS reports 'pthread_setschedparam failed; consider using ITIMER_HEARTBEAT: Operation not permitted'

The NuScratch beta VM has been changed from the alpha VM to use a thread based ticker instead of the timer interrupt ticker. The interrupts interact with some kernel problem and with the ASLA (mis)use of interrupts to cause total lock-ups when trying to play a sound.

One use reported a problem when testing -
'pthread_setschedparam failed; consider using ITIMER_HEARTBEAT: Operation not permitted'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.