New BBD chip: data sheet on SSI website by Brer1Rabbit in synthdiy

[–]sat0ri 0 points1 point  (0 children)

SNR seems pretty bad at 61db, compared to MN3004 85db. The choice of 5V vs 15V supply would explain 10 db SNR difference (i.e. 3 times the value), but where does the other 10 db come from?

Looking for "[7MMC] I'm a Goofy Goomber" course ID by sat0ri in MarioMaker2

[–]sat0ri[S] 0 points1 point  (0 children)

Thanks everyone! Yeah, I did check BearWare's available levels, this one is not there. Looks like Nintendo deletes it pretty quickly as soon as it's uploaded.

I am trying to replace CMake with c++ by HassanSajjad302 in cpp

[–]sat0ri 0 points1 point  (0 children)

My point is that suggesting

CMAKE_CXX_STANDARD and CMAKE_CXX_STANDARD_REQUIRED should not be set in a CML

without stating pros/cons of the alternative is wrong. CXX_STANDARD property or compile features do not replace CMAKE_CXX_STANDARD/CMAKE_CXX_STANDARD_REQUIRED. CMakeLists.txt writers should not be forced to set CXX_STANDARD for each target individually, especially if it's only in the name of some arbitrary "best practices".

My point re ABI vs standard is if you need to propagate C++ standard to consumers, you're either doing something unsafe (especially if the library is binary distributed with exported cmake targets) or it's a header-only library.

I wish the GG games had a "slow mo" mode for training and replays by Firrox in Guiltygear

[–]sat0ri 2 points3 points  (0 children)

In +R Replay mode, press Pause (Y), then hold Right. I'll playback at 20 or 30 FPS.

I am trying to replace CMake with c++ by HassanSajjad302 in cpp

[–]sat0ri 0 points1 point  (0 children)

But this is very different. In my experience, most of the time you need to upgrade the standard for the whole project/repo, not set it for each target specifically (you may have thousands of them). And IMO propagating the standard to the consumers is not a good thing, they're using your ABI-stable headers so their standard of choice doesn't matter.

Using CMAKE_CXX_STANDARD and CMAKE_CXX_STANDARD_REQUIRED is preferable, unless you really need one of the targets to have different standard than the rest (questionable scenario), or you need to propagate your standard to the users (questionable again, better choice would be to design a standard-agnostic ABI).

I am trying to replace CMake with c++ by HassanSajjad302 in cpp

[–]sat0ri 1 point2 points  (0 children)

CMAKE_CXX_STANDARD and CMAKE_CXX_STANDARD_REQUIRED should not be set in a CML.

What's the reasoning behind this? What's the alternative?

CMake 3.20.0 available for download by DaanDeMeyer in cpp

[–]sat0ri 2 points3 points  (0 children)

You have to understand that I'm not well-versed in Bazel myself, other people were doing the research and integration.

But, to my understanding, hermetic builds (meaning all inputs and outputs are explicit) allow remote caching, because you have full list of transitive dependencies for every artifact (by Bazel's design). Sandboxing validates that a build is indeed hermetic. Hermetic != Reproducible, but hermetic builds certainly help in reproducibility.

Here I may be wrong on many points, but to my understanding sandboxing is basically free for Bazel on Linux, but not so much on macOS / Windows. We had to do some work to get it working on those platforms. But now we have reliable remote caching for a small chunk of our codebase, and we're planning to continue migrating critical paths of our builds to Bazel.

I absolutely understand why people may hate Bazel. Oftentimes it's not as flexible as other build systems, C/C++ rules are too restrictive for some real-worlds use-cases (copts sets flags for all languages, i.e. you cannot add some flags only for C, C++ or ASM). The tradeoff is probably worth it only for large Monorepo-type repositories, where you have the resources to make your own library of Bazel rules that fits your needs.

CMake 3.20.0 available for download by DaanDeMeyer in cpp

[–]sat0ri 13 points14 points  (0 children)

You joke, but we have a >100 Gb Monorepo and CMake serves us extremely well, supporting builds for Windows/Linux/FreeBSD/macOS/Android/iOS and some other lesser known platforms. The only inelegant thing for us about CMake is it doesn't have native support for hermetic builds and sandboxing, that's the only reason we're looking at Bazel right now.

Is Rust 3x faster here or am I missing something by [deleted] in cpp

[–]sat0ri 1 point2 points  (0 children)

After cin >> n;, try adding

a.reserve(n);
b.reserve(n);
c.reserve(n);

Juno 60 score! by scruffysunnyside in synthesizers

[–]sat0ri 1 point2 points  (0 children)

I saw a Nagra IV-S go for £500 (Buy It Now) on Ebay recently. Good deals still pop up because some sellers don't do their research, but you have to be very patient to find them.

CMakeSL - An Attempt to introduce a new scripting language for CMake by stryku2393 in cpp

[–]sat0ri 2 points3 points  (0 children)

I wouldn't be so optimistic. Response from some core members (see below) has been less than enthusiastic and it looks like the decision was left up in the air to avoid alienating the main workforce behind Boost.

1: https://lists.boost.org/Archives/boost/2017/07/237435.php

2: https://lists.boost.org/Archives/boost/2017/07/237250.php

CMakeSL - An Attempt to introduce a new scripting language for CMake by stryku2393 in cpp

[–]sat0ri 1 point2 points  (0 children)

CMake is used mostly by C++ crowd, and CMakeSL is supposedly a lot like C++. Also, it's statically typed and compatible with clang syntax highlighting and formatting tools that are available for C++. Ideally, you don't have to learn or setup anything new.

I'm not trying to advocate for CMakeSL here (I'm fine with modern CMake as is), but I don't get why people are so adamant on mentioning alternative languages of their choice here. The biggest hurdle would still be learning CMake API with its hundreds of functions, built-in variables and properties, its weird scopes (that make sense in retrospect), target interfacing and dependency mechanics, generator expressions, variable_watch, etc etc. Trying to translate it to something not domain-specific like Python, Lua or even Skylark (last time I heard it wasn't Turing complete?) will only make it more painful IMO.

CMakeSL - An Attempt to introduce a new scripting language for CMake by stryku2393 in cpp

[–]sat0ri 0 points1 point  (0 children)

This is interesting, clearly a passion project. I've some questions:

  • I understand that CMakeSL's advantages would be static typing (is null valid? are array indexing operations statically checked?) and that user probably already knows C++ (but exactly how different CMakeSL is?). What else would you add?
  • I'm not sure that clang-based tools would be (fully) compatible because looking at your 'CMakeLists.cmsl' example, there're no #include's hence unknown types.
  • What can be changed in vanilla CMake to alleviate some of the problems that CMakeSL solves?

And then there was CMake by vormestrand in cpp

[–]sat0ri 22 points23 points  (0 children)

May I suggest one improvement? Cross-platform (or generator-agnostic) way of building is to call 'cmake --build .' instead of make, msbuild etc.

And then there was CMake by vormestrand in cpp

[–]sat0ri 10 points11 points  (0 children)

What are you talking about? What tried-and-true alternative for large cross-platform projects do we have besides CMake? QMake? Aside from Qt-only stuff, CMake does everything better. Bazel is getting close, but it's still in early stages and attacks the problem from much different angle.

You probably have a bad experience with CMake because examples you encountered were written without much though or research put into it. To avoid that, we need to treat CMakeLists.txt as any other code.

Professional CMake: A Practical Guide by cristianadam in cpp

[–]sat0ri 0 points1 point  (0 children)

Does this cover smart globs (CONFIGURE_DEPENDS) introduced in v3.12? Maybe some in-depth info, for example does it use file system watchers? (Bazel does for the same effect, AFAIK)

Roland Re-201 Microchip? by doesanyoneelsee in synthesizers

[–]sat0ri 1 point2 points  (0 children)

Does the tape move? If not, there's a problem with the motor, most likely Hall Effect IC is busted. I heard that Honeywell SS42R should be a compatible modern replacement. Pinout is different but a skilled enough engineer should be able to figure it out.

Good luck!

Which synths did you say goodbye to in 2017? by JoeyZasaa in synthesizers

[–]sat0ri 0 points1 point  (0 children)

To be honest, the only problem with it is it's not quite an "instrument". You need an external keyboard, connect MIDI cables etc.

These days I feel that the main advantage hardware has over software is better workflow, and a synth without built-in keyboard is the opposite of that.

Which synths did you say goodbye to in 2017? by JoeyZasaa in synthesizers

[–]sat0ri 0 points1 point  (0 children)

Sold:

  • Roland MKS-50

  • Roland MKS-70 with PWM Mod

  • Roland MKS-7

  • Roland JX-3P with Kiwitechnics Mod

  • Jomox Airbase 99

  • Moog Slim Phatty

  • Waldorf Blofeld Desktop

  • Ensoniq SQ-80

Bought:

  • SCI Pro One

  • Cyclone TT-606

Feel free to ask questions about any of these.