Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
2 changes: 1 addition & 1 deletion meson.build
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
project('Learn6502',
version: '0.6.4',
version: '0.6.5',
meson_version: '>= 1.4.1',
default_options: [ 'warning_level=2', 'werror=false', ],
)
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
],
"devDependencies": {
"prettier": "^3.8.1",
"typescript": "^5.9.3"
"typescript": "^6.0.2"
},
"packageManager": "yarn@4.13.0"
}
4 changes: 2 additions & 2 deletions packages/6502/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@learn6502/6502",
"version": "0.6.4",
"version": "0.6.5",
"description": "6502 assembler and simulator in Javascript",
"main": "dist/index.js",
"type": "module",
Expand All @@ -14,6 +14,6 @@
"author": "Stian Soreng, Nick Morgan, Pascal Garber",
"license": "GPL-3.0-only",
"devDependencies": {
"typescript": "^5.9.3"
"typescript": "^6.0.2"
}
}
1 change: 1 addition & 0 deletions packages/6502/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
"lib": ["ESNext"],
"typeRoots": ["./"],
"types": ["./global.d.ts"],
"rootDir": "./src",
"outDir": "./dist",
"module": "NodeNext",
"target": "ESNext",
Expand Down
3 changes: 3 additions & 0 deletions packages/app-android/app/i18n/de.json
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@
"First row: <tt>$0200</tt>-<tt>$021F</tt>, second row: <tt>$0220</tt>-<tt>$023F</tt>, etc.": "Erste Zeile: <tt>$0200</tt>-<tt>$021F</tt>, zweite Zeile: <tt>$0220</tt>-<tt>$023F</tt>, usw.",
"First we load the value <tt>$08</tt> into the <tt>X</tt> register. The next line is a label. Labels just mark certain points in a program so we can return to them later. After the label we decrement <tt>X</tt>, store it to <tt>$0200</tt> (the top-left pixel), and then compare it to the value <tt>$03</tt>. <a href=\"https://web.archive.org/web/20210626042844/http://www.obelisk.me.uk/6502/reference.html#CPX\"><tt>CPX</tt></a> compares the value in the <tt>X</tt> register with another value. If the two values are equal, the <tt>Z</tt> flag is set to <tt>1</tt>, otherwise it is set to <tt>0</tt>.": "Zuerst laden wir den Wert <tt>$08</tt> in das <tt>X</tt>-Register. Die nächste Zeile ist ein Label. Labels markieren bestimmte Stellen in einem Programm, damit wir später dorthin zurückkehren können. Nach dem Label dekrementieren wir <tt>X</tt>, speichern es in <tt>$0200</tt> (das Pixel oben links) und vergleichen es dann mit dem Wert <tt>$03</tt>. <a href=\"https://web.archive.org/web/20210626042844/http://www.obelisk.me.uk/6502/reference.html#CPX\"><tt>CPX</tt></a> vergleicht den Wert im <tt>X</tt>-Register mit einem anderen Wert. Wenn die beiden Werte gleich sind, wird das <tt>Z</tt>-Flag auf <tt>1</tt> gesetzt, andernfalls auf <tt>0</tt>.",
"First, <tt>readkeys</tt> checks to see if one of the direction keys (W, A, S, D) was pressed, and if so, sets the direction of the snake accordingly. Then, <tt>checkCollision</tt> checks to see if the snake collided with itself or the apple. <tt>updateSnake</tt> updates the internal representation of the snake, based on its direction. Next, the apple and snake are drawn. Finally, <tt>spinWheels</tt> makes the processor do some busy work, to stop the game from running too quickly. Think of it like a sleep command. The game keeps running until the snake collides with the wall or itself.": "Zuerst überprüft <tt>readkeys</tt>, ob eine der Richtungstasten (W, A, S, D) gedrückt wurde, und setzt entsprechend die Richtung der Schlange. Dann überprüft <tt>checkCollision</tt>, ob die Schlange mit sich selbst oder dem Apfel kollidiert ist. <tt>updateSnake</tt> aktualisiert die interne Darstellung der Schlange basierend auf ihrer Richtung. Als nächstes werden der Apfel und die Schlange gezeichnet. Schließlich lässt <tt>spinWheels</tt> den Prozessor etwas Leerlaufarbeit machen, damit das Spiel nicht zu schnell läuft. Denk daran wie an einen Sleep-Befehl. Das Spiel läuft weiter, bis die Schlange mit der Wand oder sich selbst kollidiert.",
"Fixed an issue where the back button in the learn section was always visible in desktop and tablet mode, even when no subpage was open.": "Ein Problem wurde behoben, bei dem der Zurück-Button im Lernbereich im Desktop- und Tablet-Modus immer sichtbar war, auch wenn keine Unterseite geöffnet war.",
"Fixed build error on PostmarketOS, improving mobile compatibility": "Build-Fehler unter PostmarketOS behoben, verbessert Kompatibilität mit Mobilgeräten",
"Follow system style": "Systemstil verwenden",
"Found $d label.": "%d Label gefunden.",
Expand Down Expand Up @@ -244,6 +245,7 @@
"Labels failure": "Label-Fehler",
"Learn": "Lernen",
"Learn 6502 Assembly": "Lerne 6502 Assembler",
"Learn 6502 now runs on GNOME 50! Thanks to Sabri Ünal for contributing the runtime update.": "Lerne 6502 läuft jetzt auf GNOME 50! Dank an Sabri Ünal für den Beitrag zum Runtime-Update.",
"Learn about computer history while coding": "Erfahre mehr über Computer-Geschichte beim Programmieren",
"Learn how to program the 6502 microprocessor.": "Lerne, wie man den 6502-Mikroprozessor programmiert.",
"Learn how to use the stack with PHA and PLA instructions": "Lerne, wie man den Stack mit den Befehlen PHA und PLA verwendet",
Expand Down Expand Up @@ -415,6 +417,7 @@
"Two of the stack instructions are <tt>PHA</tt> and <tt>PLA</tt>, \"push accumulator\" and \"pull accumulator\". Below is an example of these two in action.": "Zwei der Stack-Anweisungen sind <tt>PHA</tt> und <tt>PLA</tt>, \"push accumulator\" und \"pull accumulator\". Unten ist ein Beispiel dieser beiden in Aktion.",
"Unable to find/parse given address/label": "Die angegebene Adresse/Label konnte nicht gefunden oder verarbeitet werden",
"Unable to relocate code outside 64k memory": "Code kann nicht außerhalb des 64k Speicherbereichs verschoben werden",
"Under the hood: updated to TypeScript 6, Vite 8, and other dependency upgrades for improved performance and stability.": "Unter der Haube: Update auf TypeScript 6, Vite 8 und weitere Abhängigkeits-Updates für verbesserte Leistung und Stabilität.",
"Unlike zero page,Y, absolute,Y can't be used with <tt>STX</tt> but can be used with <tt>LDA</tt> and <tt>STA</tt>.": "Im Gegensatz zu Nullseite,Y kann absolut,Y nicht mit <tt>STX</tt> verwendet werden, aber mit <tt>LDA</tt> und <tt>STA</tt>.",
"Unsaved changes": "Uneingespeicherte Änderungen",
"Updating the game state": "Den Spielzustand aktualisieren",
Expand Down
3 changes: 3 additions & 0 deletions packages/app-android/app/i18n/en.default.json
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@
"First row: <tt>$0200</tt>-<tt>$021F</tt>, second row: <tt>$0220</tt>-<tt>$023F</tt>, etc.": "First row: <tt>$0200</tt>-<tt>$021F</tt>, second row: <tt>$0220</tt>-<tt>$023F</tt>, etc.",
"First we load the value <tt>$08</tt> into the <tt>X</tt> register. The next line is a label. Labels just mark certain points in a program so we can return to them later. After the label we decrement <tt>X</tt>, store it to <tt>$0200</tt> (the top-left pixel), and then compare it to the value <tt>$03</tt>. <a href=\"https://web.archive.org/web/20210626042844/http://www.obelisk.me.uk/6502/reference.html#CPX\"><tt>CPX</tt></a> compares the value in the <tt>X</tt> register with another value. If the two values are equal, the <tt>Z</tt> flag is set to <tt>1</tt>, otherwise it is set to <tt>0</tt>.": "First we load the value <tt>$08</tt> into the <tt>X</tt> register. The next line is a label. Labels just mark certain points in a program so we can return to them later. After the label we decrement <tt>X</tt>, store it to <tt>$0200</tt> (the top-left pixel), and then compare it to the value <tt>$03</tt>. <a href=\"https://web.archive.org/web/20210626042844/http://www.obelisk.me.uk/6502/reference.html#CPX\"><tt>CPX</tt></a> compares the value in the <tt>X</tt> register with another value. If the two values are equal, the <tt>Z</tt> flag is set to <tt>1</tt>, otherwise it is set to <tt>0</tt>.",
"First, <tt>readkeys</tt> checks to see if one of the direction keys (W, A, S, D) was pressed, and if so, sets the direction of the snake accordingly. Then, <tt>checkCollision</tt> checks to see if the snake collided with itself or the apple. <tt>updateSnake</tt> updates the internal representation of the snake, based on its direction. Next, the apple and snake are drawn. Finally, <tt>spinWheels</tt> makes the processor do some busy work, to stop the game from running too quickly. Think of it like a sleep command. The game keeps running until the snake collides with the wall or itself.": "First, <tt>readkeys</tt> checks to see if one of the direction keys (W, A, S, D) was pressed, and if so, sets the direction of the snake accordingly. Then, <tt>checkCollision</tt> checks to see if the snake collided with itself or the apple. <tt>updateSnake</tt> updates the internal representation of the snake, based on its direction. Next, the apple and snake are drawn. Finally, <tt>spinWheels</tt> makes the processor do some busy work, to stop the game from running too quickly. Think of it like a sleep command. The game keeps running until the snake collides with the wall or itself.",
"Fixed an issue where the back button in the learn section was always visible in desktop and tablet mode, even when no subpage was open.": "Fixed an issue where the back button in the learn section was always visible in desktop and tablet mode, even when no subpage was open.",
"Fixed build error on PostmarketOS, improving mobile compatibility": "Fixed build error on PostmarketOS, improving mobile compatibility",
"Follow system style": "Follow system style",
"Found $d label.": "Found $d label.",
Expand Down Expand Up @@ -244,6 +245,7 @@
"Labels failure": "Labels failure",
"Learn": "Learn",
"Learn 6502 Assembly": "Learn 6502 Assembly",
"Learn 6502 now runs on GNOME 50! Thanks to Sabri Ünal for contributing the runtime update.": "Learn 6502 now runs on GNOME 50! Thanks to Sabri Ünal for contributing the runtime update.",
"Learn about computer history while coding": "Learn about computer history while coding",
"Learn how to program the 6502 microprocessor.": "Learn how to program the 6502 microprocessor.",
"Learn how to use the stack with PHA and PLA instructions": "Learn how to use the stack with PHA and PLA instructions",
Expand Down Expand Up @@ -415,6 +417,7 @@
"Two of the stack instructions are <tt>PHA</tt> and <tt>PLA</tt>, \"push accumulator\" and \"pull accumulator\". Below is an example of these two in action.": "Two of the stack instructions are <tt>PHA</tt> and <tt>PLA</tt>, \"push accumulator\" and \"pull accumulator\". Below is an example of these two in action.",
"Unable to find/parse given address/label": "Unable to find/parse given address/label",
"Unable to relocate code outside 64k memory": "Unable to relocate code outside 64k memory",
"Under the hood: updated to TypeScript 6, Vite 8, and other dependency upgrades for improved performance and stability.": "Under the hood: updated to TypeScript 6, Vite 8, and other dependency upgrades for improved performance and stability.",
"Unlike zero page,Y, absolute,Y can't be used with <tt>STX</tt> but can be used with <tt>LDA</tt> and <tt>STA</tt>.": "Unlike zero page,Y, absolute,Y can't be used with <tt>STX</tt> but can be used with <tt>LDA</tt> and <tt>STA</tt>.",
"Unsaved changes": "Unsaved changes",
"Updating the game state": "Updating the game state",
Expand Down
3 changes: 3 additions & 0 deletions packages/app-android/app/i18n/es.json
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,7 @@
"First row: <tt>$0200</tt>-<tt>$021F</tt>, second row: <tt>$0220</tt>-<tt>$023F</tt>, etc.": "Primera fila: <tt>$0200</tt>-<tt>$021F</tt>, segunda fila: <tt>$0220</tt>-<tt>$023F</tt>, etc.",
"First we load the value <tt>$08</tt> into the <tt>X</tt> register. The next line is a label. Labels just mark certain points in a program so we can return to them later. After the label we decrement <tt>X</tt>, store it to <tt>$0200</tt> (the top-left pixel), and then compare it to the value <tt>$03</tt>. <a href=\"https://web.archive.org/web/20210626042844/http://www.obelisk.me.uk/6502/reference.html#CPX\"><tt>CPX</tt></a> compares the value in the <tt>X</tt> register with another value. If the two values are equal, the <tt>Z</tt> flag is set to <tt>1</tt>, otherwise it is set to <tt>0</tt>.": "Primero cargamos el valor <tt>$08</tt> en el registro <tt>X</tt>. La siguiente línea es una etiqueta. Las etiquetas marcan puntos del programa para poder volver a ellos después. Tras la etiqueta, decrementamos <tt>X</tt>, lo almacenamos en <tt>$0200</tt> (el píxel superior izquierdo) y lo comparamos con el valor <tt>$03</tt>. <a href=\"https://web.archive.org/web/20210626042844/http://www.obelisk.me.uk/6502/reference.html#CPX\"><tt>CPX</tt></a> compara el valor del registro <tt>X</tt> con otro valor. Si son iguales, la bandera <tt>Z</tt> se pone a <tt>1</tt>; en caso contrario, a <tt>0</tt>.",
"First, <tt>readkeys</tt> checks to see if one of the direction keys (W, A, S, D) was pressed, and if so, sets the direction of the snake accordingly. Then, <tt>checkCollision</tt> checks to see if the snake collided with itself or the apple. <tt>updateSnake</tt> updates the internal representation of the snake, based on its direction. Next, the apple and snake are drawn. Finally, <tt>spinWheels</tt> makes the processor do some busy work, to stop the game from running too quickly. Think of it like a sleep command. The game keeps running until the snake collides with the wall or itself.": "Primero, <tt>readkeys</tt> comprueba si se ha pulsado alguna tecla de dirección (W, A, S, D) y, de ser así, ajusta la dirección de la serpiente. Luego, <tt>checkCollision</tt> verifica si la serpiente colisionó consigo misma o con la manzana. <tt>updateSnake</tt> actualiza la representación interna de la serpiente según su dirección. Después, se dibujan la manzana y la serpiente. Por último, <tt>spinWheels</tt> hace que el procesador se ocupe un poco para que el juego no corra demasiado rápido (piénsalo como un «sleep»). El juego continúa hasta que la serpiente choca con la pared o consigo misma.",
"Fixed an issue where the back button in the learn section was always visible in desktop and tablet mode, even when no subpage was open.": "Se corrigió un problema en el que el botón de retroceso en la sección de aprendizaje siempre era visible en modo escritorio y tableta, incluso cuando no había una subpágina abierta.",
"Fixed build error on PostmarketOS, improving mobile compatibility": "Corregido un error de compilación en PostmarketOS, mejorando la compatibilidad móvil",
"Follow system style": "Seguir el estilo del sistema",
"Found $d label.": "Se encontró $d etiqueta.",
Expand Down Expand Up @@ -244,6 +245,7 @@
"Labels failure": "Error de etiquetas",
"Learn": "Aprender",
"Learn 6502 Assembly": "Aprende 6502 Assembly",
"Learn 6502 now runs on GNOME 50! Thanks to Sabri Ünal for contributing the runtime update.": "¡Learn 6502 ahora se ejecuta en GNOME 50! Gracias a Sabri Ünal por contribuir la actualización del runtime.",
"Learn about computer history while coding": "Aprende sobre la historia de la informática mientras programas",
"Learn how to program the 6502 microprocessor.": "Aprende a programar el microprocesador 6502.",
"Learn how to use the stack with PHA and PLA instructions": "Aprende a usar la pila con las instrucciones PHA y PLA",
Expand Down Expand Up @@ -415,6 +417,7 @@
"Two of the stack instructions are <tt>PHA</tt> and <tt>PLA</tt>, \"push accumulator\" and \"pull accumulator\". Below is an example of these two in action.": "Dos instrucciones de pila son <tt>PHA</tt> y <tt>PLA</tt>, \"push accumulator\" y \"pull accumulator\". Abajo hay un ejemplo de ambas en acción.",
"Unable to find/parse given address/label": "No se puede encontrar/analizar la dirección/etiqueta dada",
"Unable to relocate code outside 64k memory": "No es posible reubicar código fuera de 64k de memoria",
"Under the hood: updated to TypeScript 6, Vite 8, and other dependency upgrades for improved performance and stability.": "Bajo el capó: actualización a TypeScript 6, Vite 8 y otras actualizaciones de dependencias para mejorar el rendimiento y la estabilidad.",
"Unlike zero page,Y, absolute,Y can't be used with <tt>STX</tt> but can be used with <tt>LDA</tt> and <tt>STA</tt>.": "A diferencia de página cero,Y, absoluto,Y no puede usarse con <tt>STX</tt> pero sí con <tt>LDA</tt> y <tt>STA</tt>.",
"Unsaved changes": "Cambios sin guardar",
"Updating the game state": "Actualizando el estado del juego",
Expand Down
Loading