Giter Club home page Giter Club logo

Comments (3)

ped7g avatar ped7g commented on May 27, 2024

I like the idea of main label covering also all local labels in IFUSED, would need to think more about backward compatibility and if it would break something... It should not break projects which use main and local labels in verbose rich-name way, as the call UsefulRoutine.UseValueInB is very like trying to reach for main+local label in such project, while people using cryptic labels with dots as regular char could maybe hit some collision, but then it will also fail to assemble because of duplicate label... so this extension would be rather safe-ish IMHO.

Expression way is unlikely, if something like that happens, it will be rather just coma separated list: IFUSED UsefulRoutine, UsefulRoutine.UseValueInB ... I sometimes hit in my own projects situations where I would prefer to have ISUSED/ISDEF as expression operators, but I'm afraid to add too many new ones in v1.x, while adding the optional var-args for IFUSED is perfectly backward compatible, only limits any future extension by using this syntax for this purpose (unlikely to be an issue I guess).

from sjasmplus.

ped7g avatar ped7g commented on May 27, 2024

Meanwhile I realized there is one more work-around for this (which is IMHO decent), if you know you want local label of some IFUSED routine, you can ASSERT the main label to make it used and routine included, then the local label is found:

 ORG $8000
some:
 IFUSED
  ld b,123
.loop:
  djnz .loop
  ret
 ENDIF

 ld b,222
 ASSERT some
 call some.loop

from sjasmplus.

specke avatar specke commented on May 27, 2024

Haha, just tried it in my code and it works great. This is what I like about sjasmplus - how rich its command set is, so even the missing features can often be imitated.

from sjasmplus.

Related Issues (20)

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.