Author Topic: Orgams: Best assembler in my living room.  (Read 5555 times)

0 Members and 1 Guest are viewing this topic.

Offline HAL 6128

  • 6128 Plus
  • ******
  • Posts: 538
  • Country: de
    • index.php?action=treasury
  • Liked: 275
  • Likes Given: 1477
Re: Orgams: Best assembler in my living room.
« Reply #25 on: 22:30, 16 May 21 »
Me. Would be great to have a complete translation. ;D
My french is lousy. But thanks to Google-Translator I can get a glimpse of information.
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

Offline m_dr_m

  • CPC6128
  • ****
  • Posts: 261
  • Country: se
  • http://orgams.wikidot.com/
    • OrgaMS!
  • Liked: 172
  • Likes Given: 187
Re: Orgams: Best assembler in my living room.
« Reply #26 on: 17:21, 17 May 21 »
Well, believe it or not, but the Arkos Tracker doc is in English only, and I never had any complaint from French people (and yes, some are using it).
That's because all AT users have already capitulated to the empire.

Another idea would be to ditch the French documentation, and only keep the English one.
Ich mag die Erlangen Geometrieschule.

Me. Would be great to have a complete translation.
Oh yes, nice!
This version: http://orgams.wikidot.com/userguide also comes from googletranslate, pimped with the help of some members of this forum!
I'll try to improve it incrementally. Don't hesitate to do the same, that's a wiki!

Offline GUNHED

  • 6128 Plus
  • ******
  • Posts: 2.693
  • Country: de
  • Reincarnation of TFM
    • FutureOS - The quickest OS for the CPC and Plus
  • Liked: 1266
  • Likes Given: 2961
Re: Orgams: Best assembler in my living room.
« Reply #27 on: 19:49, 18 May 21 »
Are there Orgams users that doesn't speak French?
Trying to assess how important/necessary it is to update English documentation.
Of Course! French is nice (as much as I like German), but English is what we all understand.
http://futureos.de --> Get the revolutionary FutureOS (Update: 2021.01.24)
http://futureos.cpc-live.com/files/LambdaSpeak_RSX_by_TFM.zip --> Get the RSX-ROM for LambdaSpeak :-) (Updated: 2021.07.15)

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 3.971
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 3070
  • Likes Given: 1857
Re: Orgams: Best assembler in my living room.
« Reply #28 on: 19:58, 18 May 21 »
English is nice to communicate between peoples, but not to write technical documentations if it is not the native language. Best to write with your own language and next use a translator and each users from other countries interested by the project can improve the quality to deserve the same technical quality as expected.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline HAL 6128

  • 6128 Plus
  • ******
  • Posts: 538
  • Country: de
    • index.php?action=treasury
  • Liked: 275
  • Likes Given: 1477
Re: Orgams: Best assembler in my living room.
« Reply #29 on: 23:09, 18 May 21 »

Yes, I agree. Because it's much easier to write and bring down what you have mind. But it is also sometimes hard to understand, even with the help of a translator. E.g. in the "Guide Utilisatuer" of Orgams there are some sentences where I think "hmm, what does the author means with ...?" >> ou encore en appuyant sur l'interrupteur du disjoncteur." >> translated with Google "by pressing the circuit breaker switch" (funny)
or
"La première chose que vous voudrez faire, c'est écouter 6:33." ?? It seems to be for insider or I don't have the right clue?
But most time it's understandable and easy to follow. Therefore I will try my best to translate the guide because Orgams is the best tool to program directly on the CPC.
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

Offline eto

  • Supporter
  • 464 Plus
  • *
  • Posts: 371
  • Country: de
  • Liked: 226
  • Likes Given: 220
Re: Orgams: Best assembler in my living room.
« Reply #30 on: 09:17, 19 May 21 »
"by pressing the circuit breaker switch"

So my French is too rusty to really understand that, but with the help of Google translate AND Google I think it's doable. I'm actually really surprised how good the Google translation already works. Probably much better than if the documentation was done in English directly by someone, who's English is not perfect. Except for a few aspects of course, which you pointed out.

1) Google is not good at translating things that have rarely been translated before and where it's missing the context.  In this case, with the context we have, I could imagine, that it's the Reset button.

2) Cultural references, which others don't understand, are generally problematic. The language is irrelevant here. "6:33 "would not be better, if it was written in English, you would still miss the insider joke. ;-) But then, a search for 6:33 in Google helps a lot. Turns out this is a French band (*). (btw: pretty cool music). With that information, the sentence makes sense. (Btw: How about making "6:33" a link to one of their videos on Youtube?)
If it would have been the other way around and someone would have put a "listen to 50 cent" into the documentation, then French readers would be surprised why they should "écouter 50 centimes". Or even worse: "hör Dir Silbermond an" which turns out as "Lune argentée".

* fun fact: 6:33 has a German Wikipedia entry but no French one: https://de.wikipedia.org/wiki/6:33

As long as the documentation is available on a website, I am happy. Google translate is doing a really good job. It gets more problematic if images have text in it that can't be translated or if the whole document is in a PDF or Word only. The Spanish 8BP documentation is an example that is doing both of it, so the 8BP library is more or less limited to Spanish readers just because the documentation is so hard to translate. It's a lot of effort to make sense of it and translated it with some tools that often corrupt the layout and then, a few weeks later, the next version is published and you start from scratch.
« Last Edit: 09:19, 19 May 21 by eto »

Offline Otto

  • CPC664
  • ***
  • Posts: 84
  • Country: de
  • Liked: 117
  • Likes Given: 932
Re: Orgams: Best assembler in my living room.
« Reply #31 on: 10:08, 19 May 21 »
Don't miss the online translator: https://deepl.com/
It's much better than Google.
Haven't it tested with French, but for English <-> German translations it's excellent, and it covers most European languages.

Offline TotO

  • 6128 Plus
  • ******
  • Posts: 3.971
  • Country: fr
    • ?area=showdonations;u=4
  • Liked: 3070
  • Likes Given: 1857
Re: Orgams: Best assembler in my living room.
« Reply #32 on: 12:29, 19 May 21 »
That is the problem to do jokes into a technical document. It is not the good place for that.
« Last Edit: 12:37, 19 May 21 by TotO »
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Offline m_dr_m

  • CPC6128
  • ****
  • Posts: 261
  • Country: se
  • http://orgams.wikidot.com/
    • OrgaMS!
  • Liked: 172
  • Likes Given: 187
Re: Orgams: Best assembler in my living room.
« Reply #33 on: 15:56, 19 May 21 »
"La première chose que vous voudrez faire, c'est écouter 6:33."
If it makes you fell better, even French people might miss my jokes. Even I, don't understand them after some times.

Who said it was a joke anyway? You really need to listen to 6:33
https://www.youtube.com/watch?v=mK8FxrdzeBA


Offline HAL 6128

  • 6128 Plus
  • ******
  • Posts: 538
  • Country: de
    • index.php?action=treasury
  • Liked: 275
  • Likes Given: 1477
Re: Orgams: Best assembler in my living room.
« Reply #34 on: 13:41, 20 May 21 »
Ok, now I understand. :)

[/size]Nice music by the way. Thanks for sharing. The name of the group "6:33" sounds somehow mysteryful.
[/size]
[/size]
Don't miss the online translator: https://deepl.com/ It's much better than Google. Haven't it tested with French, but for English <-> German translations it's excellent, and it covers most European languages.

[/size]Thanks for this one. I didn't know it. Works very good.
[/size]
[/size]
2) Cultural references, which others don't understand, are generally problematic.

[/size]But that's what it also makes intersting I would say. :)
...proudly supported Schnapps Demo, Pentomino and NQ-Music-Disc with GFX

Offline m_dr_m

  • CPC6128
  • ****
  • Posts: 261
  • Country: se
  • http://orgams.wikidot.com/
    • OrgaMS!
  • Liked: 172
  • Likes Given: 187
Re: Orgams: Best assembler in my living room.
« Reply #35 on: 14:53, 16 July 21 »

Upcoming import behaviour: my heart still balances between two options.


  • 1. Explicit namespace (a.k.a. full qualification).


That is basically what is explained here: http://orgams.wikidot.com/userguide#toc38
In summary:


Code: [Select]
init   ; global init
   call ui.init 
   call player.init


(see doc for more examples).


Pro:
  • Explicit and legible, no ambiguity.


Cons:
  • Doesn't work like Maxam or Rasm, makes porting a bit more tedious.
  • Makes it more difficult to swap code. E.g:


Code: [Select]
if use_mock
   import "fakemus"
else
   import "shapmus"
end


[...]
; Also have to adapt prefix: fakemus.iter vs shapmus.iter


For the record, this latter point could be fixed by aliasing:
Code: [Select]
if use_mock
   import "fakemus" as mus
else
   import "shapmus" as mus
end


[...]
   call mus.iter


  • 2. Best of both worlds: implicit and explicit are supported.


As long as a label is unique, qualification isn't needed.


There would still be some degree of encapsulation, since I don't plan to transitively expose labels (e.g. if A imports B and B imports C, A doesn't see C's labels).


I'm leaning forward this solution. Feel free to weigh in.
Thank you for your attention.

Offline Targhan

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.382
  • Country: fr
  • Liked: 1310
  • Likes Given: 191
Re: Orgams: Best assembler in my living room.
« Reply #36 on: 20:13, 16 July 21 »
I believe 1.2 is more natural. You don't really want to be forced to use labels with namespace when including another source.
Targhan/Arkos

Arkos Tracker 2.0.1 now released! - Follow the news on Twitter!
Disark - A cross-platform Z80 disassembler/source converter
FDC Tool 1.1 - Read Amsdos files without the system

Imperial Mahjong
Orion Prime

Offline andycadley

  • Supporter
  • 6128 Plus
  • *
  • Posts: 979
  • Liked: 479
  • Likes Given: 80
Re: Orgams: Best assembler in my living room.
« Reply #37 on: 01:13, 17 July 21 »
Yes, I think most developers would expect namespaces to be optional if there is no ambiguity.

Offline m_dr_m

  • CPC6128
  • ****
  • Posts: 261
  • Country: se
  • http://orgams.wikidot.com/
    • OrgaMS!
  • Liked: 172
  • Likes Given: 187
Re: Orgams: Best assembler in my living room.
« Reply #38 on: 08:31, 19 July 21 »
Thanks to @gurneyh and @krusty_benediction here are two more options!


  • 3 Decouple IMPORT and namespaces.
Namespaces (even in a single source) are interesting in their own right.
Exemple curtesy of Gurneyh:


Code: [Select]
module Player


init
 [...]


update
.loop
  [...]
  djnz .loop
  ret


display
  [...]


endmodule



module Monsters


init
   [...]


update
.loop
  [...]
  djnz .loop
  ret


display
   [...]
endmodule


[...]


call Player.update


The code-swap exemple would become:


Code: [Select]
module mus

if use_mock
   import "fakemus"
else
   import "shapmus"
end
endmodule


This French variant wouldn't use automagic namespace (labels from imported sources accessible both via namespace and without):
* Pro: more explicit
* Pro: less surprising
* Pro: doesn't depend on filename
* Con: less handy in certain cases.


This leads to the following alternative:
  • 4 Options 2 + 3
Automagic namespace like in 1.2, with possibility for explicite namespace via `module` like in 1.3.
 
This would be handy in the following scenario: main.o imports both "lib" and "lab".
None have common labels, so no namespace qualification is used nor needed.


Then, a routine (e.g. `parse`) is introduced in "lab", with the same name than one existing in "lib".
Now, with option 3: one of the import must be wrapped in a namespace, hence all its references must be updated.
With option 4: we only have to qualify the `parse` reference: `call lib.parse`