Trend Trading With binary Options Binary Options Pro Signals

Step-by-Step Guide for Adding a Stack, Expanding Control Lines, and Building an Assembler

After the positive response to my first tutorial on expanding the RAM, I thought I'd continue the fun by expanding the capabilities of Ben's 8-bit CPU even further. That said, you'll need to have done the work in the previous post to be able to do this. You can get a sense for what we'll do in this Imgur gallery.
In this tutorial, we'll balance software and hardware improvements to make this a pretty capable machine:

Parts List

To only update the hardware, you'll need:
If you want to update the toolchain, you'll need:
  1. Arduino Mega 2560 (Amazon) to create the programmer.
  2. Ribbon Jumper Cables (Amazon) to connect the Arduino to the breadboard.
  3. TL866 II Plus EEPROM Programmer (Amazon) to program the ROM.
Bonus Clock Improvement: One additional thing I did is replace the 74LS04 inverter in Ben's clock circuit with a 74LS14 inverting Schmitt trigger (datasheet, Jameco). The pinouts are identical! Just drop it in, wire the existing lines, and then run the clock output through it twice (since it's inverting) to get a squeaky clean clock signal. Useful if you want to go even faster with the CPU.

Step 1: Program with an Arduino and Assembler (Image 1, Image 2)

There's a certain delight in the physical programming of a computer with switches. This is how Bill Gates and Paul Allen famously programmed the Altair 8800 and started Microsoft. But at some point, the hardware becomes limited by how effectively you can input the software. After upgrading the RAM, I quickly felt constrained by how long it took to program everything.
You can continue to program the computer physically if you want and even after upgrading that option is still available, so this step is optional. There's probably many ways to approach the programming, but this way felt simple and in the spirit of the build. We'll use an Arduino Mega 2560, like the one in Ben's 6502 build, to program the RAM. We'll start with a homemade assembler then switch to something more robust.
Preparing the Physical Interface
The first thing to do is prepare the CPU to be programmed by the Arduino. We already did the hard work on this in the RAM upgrade tutorial by using the bus to write to the RAM and disconnecting the control ROM while in program mode. Now we just need to route the appropriate lines to a convenient spot on the board to plug the Arduino into.
  1. This is optional, but I rewired all the DIP switches to have ground on one side, rather than alternating sides like Ben's build. This just makes it easier to route wires.
  2. Wire the 8 address lines from the DIP switch, connecting the side opposite to ground (the one going to the chips) to a convenient point on the board. I put them on the far left, next to the address LEDs and above the write button circuit.
  3. Wire the 8 data lines from the DIP switch, connecting the side opposite to ground (the one going to the chips) directly below the address lines. Make sure they're separated by the gutter so they're not connected.
  4. Wire a line from the write button to your input area. You want to connect the side of the button that's not connected to ground (the one going to the chip).
So now you have one convenient spot with 8 address lines, 8 data lines, and a write line. If you want to get fancy, you can wire them into some kind of connector, but I found that ribbon jumper cables work nicely and keep things tidy.
The way we'll program the RAM is to enter program mode and set all the DIP switches to the high position (e.g., 11111111). Since the switches are upside-down, this means they'll all be disconnected and not driving to ground. The address and write lines will simply be floating and the data lines will be weakly pulled up by 1k resistors. Either way, the Arduino can now drive the signals going into the chips using its outputs.
Creating the Arduino Programmer
Now that we can interface with an Arduino, we need to write some software. If you follow Ben's 6502 video, you'll have all the knowledge you need to get this working. If you want some hints and code, see below (source code):
  1. Create arrays for your data and address lines. For example: const char ADDRESS_LINES[] = {39, 41, 43, 45, 47, 49, 51, 53};. Create your write line with #define RAM_WRITE 3.
  2. Create functions to enable and disable your address and data lines. You want to enable them before writing. Make sure to disable them afterward so that you can still manually program using DIP switches without disconnecting the Arduino. The code looks like this (just change INPUT to OUTPUT accordingly): for(int n = 0; n < 8; n += 1) { pinMode(ADDRESS_LINES[n], OUTPUT); }
  3. Create a function to write to an address. It'll look like void writeData(byte writeAddress, byte writeData) and basically use two loops, one for address and one for data, followed by toggling the write.
  4. Create a char array that contains your program and data. You can use #define to create opcodes like #define LDA 0x01.
  5. In your main function, loop through the program array and send it through writeData.
With this setup, you can now load multi-line programs in a fraction of a second! This can really come in handy with debugging by stress testing your CPU with software. Make sure to test your setup with existing programs you know run reliably. Now that you have your basic setup working, you can add 8 additional lines to read the bus and expand the program to let you read memory locations or even monitor the running of your CPU.
Making an Assembler
The above will serve us well but it's missing a key feature: labels. Labels are invaluable in assembly because they're so versatile. Jumps, subroutines, variables all use labels. The problem is that labels require parsing. Parsing is a fun project on the road to a compiler but not something I wanted to delve into right now--if you're interested, you can learn about Flex and Bison. Instead, I found a custom assembler that lets you define your CPU's instruction set and it'll do everything else for you. Let's get it setup:
  1. If you're on Windows, you can use the pre-built binaries. Otherwise, you'll need to install Rust and compile via cargo build.
  2. Create a file called 8bit.cpu and define your CPU instructions (source code). For example, LDA would be lda {address} -> 0x01 @ address[7:0]. What's cool is you can also now create the instruction's immediate variant instead of having to call it LDI: lda #{value} -> 0x05 @ value[7:0].
  3. You can now write assembly by adding #include "8bit.cpu" to the top of your code. There's a lot of neat features so make sure to read the documentation!
  4. Once you've written some assembly, you can generate the machine code using ./customasm yourprogram.s -f hexc -p. This prints out a char array just like our Arduino program used!
  5. Copy the char array into your Arduino program and send it to your CPU.
At this stage, you can start creating some pretty complex programs with ease. I would definitely play around with writing some larger programs. I actually found a bug in my hardware that was hidden for a while because my programs were never very complex!

Step 2: Expand the Control Lines (Image)

Before we can expand the CPU any further, we have to address the fact we're running out of control lines. An easy way to do this is to add a 3rd 28C16 ROM and be on your way. If you want something a little more involved but satisfying, read on.
Right now the control lines are one hot encoded. This means that if you have 4 lines, you can encode 4 states. But we know that a 4-bit binary number can encode 16 states. We'll use this principle via 74LS138 decoders, just like Ben used for the step counter.
Choosing the Control Line Combinations
Everything comes with trade-offs. In the case of combining control lines, it means the two control lines we choose to combine can never be activated at the same time. We can ensure this by encoding all the inputs together in the first 74LS138 and all the outputs together in a second 74LS138. We'll keep the remaining control lines directly connected.
Rewiring the Control Lines
If your build is anything like mine, the control lines are a bit of a mess. You'll need to be careful when rewiring to ensure it all comes back together correctly. Let's get to it:
  1. Place the two 74LS138 decoders on the far right side of the breadboard with the ROMs. Connect them to power and ground.
  2. You'll likely run out of inverters, so place a 74LS04 on the breadboard above your decoders. Connect it to power and ground.
  3. Carefully take your inputs (MI, RI, II, AI, BI, J) and wire them to the outputs of the left 74LS138. Do not wire anything to O0 because that's activated by 000 which won't work for us!
  4. Carefully take your outputs (RO, CO, AO, EO) and wire them to the outputs of the right 74LS138. Remember, do not wire anything to O0!
  5. Now, the 74LS138 outputs are active low, but the ROM outputs were active high. This means you need to swap the wiring on all your existing 74LS04 inverters for the LEDs and control lines to work. Make sure you track which control lines are supposed to be active high vs. active low!
  6. Wire E3 to power and E2 to ground. Connect the E1 on both 138s together, then connect it to the same line as OE on your ROMs. This will ensure that the outputs are disabled when you're in program mode. You can actually take off the 1k pull-up resistors from the previous tutorial at this stage, because the 138s actively drive the lines going to the 74LS04 inverters rather than floating like the ROMs.
At this point, you really need to ensure that the massive rewiring job was successful. Connect 3 jumper wires to A0-A2 and test all the combinations manually. Make sure the correct LED lights up and check with a multimeteoscilloscope that you're getting the right signal at each chip. Catching mistakes at this point will save you a lot of headaches! Now that everything is working, let's finish up:
  1. Connect A0-A2 of the left 74LS138 to the left ROM's A0-A2.
  2. Connect A0-A2 of the right 74LS138 to the right ROM's A0-A2.
  3. Distribute the rest of the control signals across the two ROMs.
Changing the ROM Code
This part is easy. We just need to update all of our #define with the new addresses and program the ROMs again. For clarity that we're not using one-hot encoding anymore, I recommend using hex instead of binary. So instead of #define MI 0b0000000100000000, we can use #define MI 0x0100, #define RI 0x0200, and so on.
Testing
Expanding the control lines required physically rewiring a lot of critical stuff, so small mistakes can creep up and make mysterious errors down the road. Write a program that activates each control line at least once and make sure it works properly! With your assembler and Arduino programmer, this should be trivial.
Bonus: Adding B Register Output
With the additional control lines, don't forget you can now add a BO signal easily which lets you fully use the B register.

Step 3: Add a Stack (Image 1, Image 2)

Adding a stack significantly expands the capability of the CPU. It enables subroutines, recursion, and handling interrupts (with some additional logic). We'll create our stack with an 8-bit stack pointer hard-coded from $0100 to $01FF, just like the 6502.
Wiring up the Stack Pointer
A stack pointer is conceptually similar to a program counter. It stores an address, you can read it and write to it, and it increments. The only difference between a stack pointer and a program counter is that the stack pointer must also decrement. To create our stack pointer, we'll use two 74LS193 4-bit up/down binary counters:
  1. Place a 74LS00 NAND gate, 74LS245 transceiver, and two 74LS193 counters in a row next to your output register. Wire up power and ground.
  2. Wire the the Carry output of the right 193 to the Count Up input of the left 193. Do the same for the Borrow output and Count Down input.
  3. Connect the Clear input between the two 193s and with an active high reset line. The B register has one you can use on its 74LS173s.
  4. Connect the Load input between the two 193s and to a new active low control line called SI on your 74LS138 decoder.
  5. Connect the QA-QD outputs of the lower counter to A8-A5 and the upper counter to A4-A1. Pay special attention because the output are in a weird order (BACD) and you want to make sure the lower A is connected to A8 and the upper A is connected to A4.
  6. Connect the A-D inputs of the lower counter to B8-B5 and the upper counter to B4-B1. Again, the inputs are in a weird order and on both sides of the chip so pay special attention.
  7. Connect the B1-B8 outputs of the 74LS245 transceiver to the bus.
  8. On the 74LS245 transceiver, connect DIR to power (high) and connect OE to a new active low control line called SO on your 74LS138 decoder.
  9. Add 8 LEDs and resistors to the lower part of the 74LS245 transceiver (A1-A8) so you can see what's going on with the stack pointer.
Enabling Increment & Decrement
We've now connected everything but the Count Up and Count Down inputs. The way the 74LS193 works is that if nothing is counting, both inputs are high. If you want to increment, you keep Count Down high and pulse Count Up. To decrement, you do the opposite. We'll use a 74LS00 NAND gate for this:
  1. Take the clock from the 74LS08 AND gate and make it an input into two different NAND gates on the 74LS00.
  2. Take the output from one NAND gate and wire it to the Count Up input on the lower 74LS193 counter. Take the other output and wire it to the Count Down input.
  3. Wire up a new active high control line called SP from your ROM to the NAND gate going into Count Up.
  4. Wire up a new active high control line called SM from your ROM to the NAND gate going into Count Down.
At this point, everything should be working. Your counter should be able to reset, input a value, output a value, and increment/decrement. But the issue is it'll be writing to $0000 to $00FF in the RAM! Let's fix that.
Accessing Higher Memory Addresses
We need the stack to be in a different place in memory than our regular program. The problem is, we only have an 8-bit bus, so how do we tell the RAM we want a higher address? We'll use a special control line to do this:
  1. Wire up an active high line called SA from the 28C16 ROM to A8 on the Cypress CY7C199 RAM.
  2. Add an LED and resistor so you can see when the stack is active.
That's it! Now, whenever we need the stack we can use a combination of the control line and stack pointer to access $0100 to $01FF.
Updating the Instruction Set
All that's left now is to create some instructions that utilize the stack. We'll need to settle some conventions before we begin:
If you want to add a little personal flair to your design, you can change the convention fairly easily. Let's implement push and pop (source code):
  1. Define all your new control lines, such as #define SI 0x0700 and #define SO 0x0005.
  2. Create two new instructions: PSH (1011) and POP (1100).
  3. PSH starts the same as any other for the first two steps: MI|CO and RO|II|CE. The next step is to put the contents of the stack pointer into the address register via MI|SO|SA. Recall that SA is the special control line that tells the memory to access the $01XX bank rather than $00XX.
  4. We then take the contents of AO and write it into the RAM. We can also increment the stack pointer at this stage. All of this is done via: AO|RI|SP|SA, followed by TR.
  5. POP is pretty similar. Start off with MI|CO and RO|II|CE. We then need to take a cycle and decrement the stack pointer with SM. Like with PSH, we then set the address register with MI|SO|SA.
  6. We now just need to output the RAM into our A register with RO|AI|SA and then end the instruction with TR.
  7. Updating the assembler is easy since neither instruction has operands. For example, push is just psh -> 0x0B.
And that's it! Write some programs that take advantage of your new 256 byte stack to make sure everything works as expected.

Step 4: Add Subroutine Instructions (Image)

The last step to complete our stack is to add subroutine instructions. This allows us to write complex programs and paves the way for things like interrupt handling.
Subroutines are like a blend of push/pop instructions and a jump. Basically, when you want to call a subroutine, you save your spot in the program by pushing the program counter onto the stack, then jumping to the subroutine's location in memory. When you're done with the subroutine, you simply pop the program counter value from the stack and jump back into it.
We'll follow 6502 conventions and only save and restore the program counter for subroutines. Other CPUs may choose to save more state, but it's generally left up to the programmer to ensure they're not wiping out states in their subroutines (e.g., push the A register at the start of your subroutine if you're messing with it and restore it before you leave).
Adding an Extra Opcode Line
I've started running low on opcodes at this point. Luckily, we still have two free address lines we can use. To enable 5-bit opcodes, simply wire up the 4Q output of your upper 74LS173 register to A7 of your 28C16 ROM (this assumes your opcodes are at A3-A6).
Updating the ROM Writer
At this point, you simply need to update the Arduino writer to support 32 instructions vs. the current 16. So, for example, UCODE_TEMPLATE[16][8] becomes UCODE_TEMPLATE[32][8] and you fill in the 16 new array elements with nop. The problem is that the Arduino only has so much memory and with the way Ben's code is written to support conditional jumps, it starts to get tight.
I bet the code can be re-written to handle this, but I had a TL866II Plus EEPROM programmer handy from the 6502 build and I felt it would be easier to start using that instead. Converting to a regular C program is really simple (source code):
  1. Copy all the #define, global const arrays (don't forget to expand them from 16 to 32), and void initUCode(). Add #include and #include to the top.
  2. In your traditional int main (void) C function, after initializing with initUCode(), make two arrays: char ucode_upper[2048] and char ucode_lower[2048].
  3. Take your existing loop code that loops through all addresses: for (int address = 0; address < 2048; address++).
  4. Modify instruction to be 5-bit with int instruction = (address & 0b00011111000) >> 3;.
  5. When writing, just write to the arrays like so: ucode_lower[address] = ucode[flags][instruction][step]; and ucode_upper[address] = ucode[flags][instruction][step] >> 8;.
  6. Open a new file with FILE *f = fopen("rom_upper.hex", "wb");, write to it with fwrite(ucode_upper, sizeof(char), sizeof(ucode_upper), f); and close it with fclose(f);. Repeat this with the lower ROM too.
  7. Compile your code using gcc (you can use any C compiler), like so: gcc -Wall makerom.c -o makerom.
Running your program will spit out two binary files with the full contents of each ROM. Writing the file via the TL866II Plus requires minipro and the following command: minipro -p CAT28C16A -w rom_upper.hex.
Adding Subroutine Instructions
At this point, I cleaned up my instruction set layout a bit. I made psh and pop 1000 and 1001, respectively. I then created two new instructions: jsr and rts. These allow us to jump to a subroutine and returns from a subroutine. They're relatively simple:
  1. For jsr, the first three steps are the same as psh: MI|CO, RO|II|CE, MI|SO|SA.
  2. On the next step, instead of AO we use CO to save the program counter to the stack: CO|RI|SP|SA.
  3. We then essentially read the 2nd byte to do a jump and terminate: MI|CO, RO|J.
  4. For rts, the first four steps are the same as pop: MI|CO, RO|II|CE, SM, MI|SO|SA.
  5. On the next step, instead of AI we use J to load the program counter with the contents in stack: RO|J|SA.
  6. We're not done! If we just left this as-is, we'd jump to the 2nd byte of jsr which is not an opcode, but a memory address. All hell would break loose! We need to add a CE step to increment the program counter and then terminate.
Once you update the ROM, you should have fully functioning subroutines with 5-bit opcodes. One great way to test them is to create a recursive program to calculate something--just don't go too deep or you'll end up with a stack overflow!

Conclusion

And that's it! Another successful upgrade of your 8-bit CPU. You now have a very capable machine and toolchain. At this point I would have a bunch of fun with the software aspects. In terms of hardware, there's a number of ways to go from here:
  1. Interrupts. Interrupts are just special subroutines triggered by an external line. You can make one similar to how Ben did conditional jumps. The only added complexity is the need to load/save the flags register since an interrupt can happen at any time and you don't want to destroy the state. Given this would take more than 8 steps, you'd also need to add another line for the step counter (see below).
  2. ROM expansion. At this point, address lines on the ROM are getting tight which limits any expansion possibilities. With the new approach to ROM programming, it's trivial to switch out the 28C16 for the 28C256 that Ben uses in the 6502. These give you 4 additional address lines for flags/interrupts, opcodes, and steps.
  3. LCD output. At this point, adding a 16x2 character LCD like Ben uses in the 6502 is very possible.
  4. Segment/bank register. It's essentially a 2nd memory address register that lets you access 256-byte segments/banks of RAM using bank switching. This lets you take full advantage of the 32K of RAM in the Cypress chip.
  5. Fast increment instructions. Add these to registers by replacing 74LS173s with 74LS193s, allowing you to more quickly increment without going through the ALU. This is used to speed up loops and array operations.
submitted by MironV to beneater [link] [comments]

The Sun Rises as Usual: My thoughts on the enactment of the national security law in Hong Kong (Author: Simon Shen 沈旭暉)

The below essay by Simon Shen (沈旭暉), a Hong Kong-based political scientist and columnist.
Link to original essay: Facebook
YouTube channel (Cantonese)
His videos and articles has been on this sub a few times (See https://redd.it/hmttfa https://redd.it/gn5j83), so I thought this one is also worth a read and discuss, whether we agree or not.

The Sun Rises as Usual: My thoughts on the enactment of the national security law in Hong Kong

July 1st, 2020 shall be remembered as the day Hong Kong completed its second Handover to China. A strong sense of despair clouds over the city as Beijing nuked us with the National Security Law (NSL). The thought of losing the authenticity of Hong Kong forever is ingrained in many of us.
The same day, the sun rises in the east as usual.The rule of thumb to survive this era of turmoil is to maintain control of your mental state. Remain unflappable by the ongoing absurdity. You live your life at your own pace with no restrictions. And that is how you win in society, at the workplace, on campus, and in marriage.
As to how we could achieve that, I hope my two-cents would give you some ideas.
The officials expected us to be overwhelmed, terrified, and occupied by NSL. Nevertheless, the clauses of the law have never been the main course of this extravagant meal. What truly awaits for us is the complete makeover of the Hong Kong ruling. Abolishing the standard procedure inherited from British Hong Kong, rationality and logical decision-making are soon replaced by the ambiguity of the authoritarian “rule of law” of China. Hong Kong has lost its place in the globe at the mercy of NSL; that is, to show a lucid message: Beijing could withdraw the “One Country, Two Systems” principle however it sees fit. Moreover, it is the re-education training CCP set up for Hongkongers to make them know their place and accept the “Mainland ideology,” which includes tolerating laws and regulations that are more “lenient” to serve the Chinese political agenda. Placing the national interests in heart, it is farewell to “Rule of Law,” and the common understanding of right and wrong and dos and don’ts.
This is the textbook example of authoritarian ruling. Perhaps people would be seeing some form of democracy and freedom; however, those were merely decoys in which the supreme power vested afar.
23 years after the Handover, pro-Beijing population remains small by default. The young generation rebukes Chinese identity even more than before. The enactment of NSL indicates the failure of CCP’s strategic approaches to entice Hongkongers. If the regular and United Front approaches failed through, they might as well execute eradication instead. It may appear as China is calling for enticement, but the underlying measures/gimmicks are showing something else. The grand Unity of Mainland and Hong Kong is nothing more than a hoax.
In this new Hong Kong, measurements taken to appease public backlash or allow people to express their frustration toward politicians or policies are stored in the past. Furthermore, the Hong Kong government has adopted more extreme approaches—severing Hong Kong into the pro-democracy camp and the pro-Beijing camp; bringing back Cultural Revolution tactics to effectively counteract dissentance; and activating 24/7 monitorization of the population. The propaganda of the CCP regime is to increasingly disintegrate the mutual trust between people by ratting and spying. Building the new norm where the civil society crumbles and espionage is normalized. People with malicious intent may find this new world rather exciting. Without the checks and balances or supervision in the system, the escalating waves of purging the “impure” in the next 2 years are anticipated.
The hostile public opinion of Hong Kong toward Beijing’s decisions have always been a throne in the flesh for the ruling party which led to it prioritizing the disunification of the Hong Kong civil society in the following 2 years—gathering the elites from all professions, alternating the policies of media regulations, reforming education to be more CCP-interests-oriented, and emphasizing the governmental compliance of all departments for effective executions of the new laws. The small population that is most affected by NSL would be those who are in the “Four Black Categories,” including the influencers and KOLs. The two major key points for Hong Kong government’s guidelines are “rule by law” and “always have the national interests at heart.” Regardless of NSL, Public Order Ordinance(POO) per se or any other laws could be used to incriminate the dissidents. Even a world-renowned Chinese artist such as Ai Weiwei was accused of Tax Evasion. Apolitical celebrities with millions of fans and could also be targeted; e.g. Fan Bingbing. Over time, people would adapt to self-censorship. As their minds slowly die of a thousand cuts to circumvent trespassing the political “bottom-line”, it includes avoiding dissenting the propaganda and minimizing exposure that may attract unwanted attention.
Oddly enough, if you were to be a tourist, you probably would not be able to capture the post-NSL nuances of this hollow Hong Kong. You would see all business continue, stock market arises, and the real estate market thrives as usual. It is as if the script written for the second Handover would play out successfully, as long as the basic needs of Hongkongers are satisfied.
Amidst of this turmoil, Hongkongers wouldn’t need me to elaborate more; however, we should ask ourselves if there is something else that we could do. Do you still remember how we were like before all of these occur? What are the options we have aside from obeying to the laws, immigrating out of our homeland, or starting riots? How should we live in the middle of this mess?
From the anti-extradition law protest to the ongoing movement we have today—disregarding the variations in the slogans—we are a part of the global transformation which is beyond politics and may very well be a segment of the fourth industrial revolution. Moving forward from now, with AI replacing brain-power taxing positions, it would be unlikely for anyone to have a stable job and their retirement secured. With that being said, we are facing a tomorrow where people could no longer rely on a singular path for career planning. The younglings are determined and flexible about making chances. They are independent individuals who seek for autonomy in life without relying on governmental entities, pro-establishment units, and consortiums, for their survival which tie into a global trend. The “ultrastable system” of the good old times Hong Kong is in the past. The young generation is calling for “Laam Chau.” (self-destruction to counterbalance Hong Kong government) Acknowledging the fact that enduring injustice would not secure any job positions, the young generation tends to take on entrepreneurship and minimizing their political dependency.
Many friends started talking about immigration. A decade ago, the media were hyping the topic regarding whether or not I would be immigrating to Singapore. I have been repeating myself—the concept of immigration is obsolete. Over the past year, would you say that the overseas Hongkongers contributed more to the movement or the apolitical Hongkongers? Even if we hold multiple citizenships, travel around the world, send our children to study abroad, or hold investments in another country, what would it matter? Any of those would not affect our Hongkonger identity. When online classes are given remotely on Zoom, would it matter if you are in Hong Kong or in Congo? The physical location of Hong Kong shouldn’t tie us down. We should sever ourselves from the idea of leaving or staying and make the world our home. By stitching the virtual world to the real world, we are undefeated by constant change. To me, that is what Hong Kong really is.
All censorship from the authoritarian regime have one in common; that is, the oppressions could never be reasoned with the Common Law. If the pro-democracy anthem, “Glory to Hong Kong,” is prohibited to be sung on campuses, what about the 80’s Cantopop hit, “Boundless Oceans, Vast Skies” or “Blowing in the Wind” which both hint liberation in the lyrics? As the movement slogan, “Five Demands, Not One Less,” was banned, could the protesters express their dissent by raising their hands to point out 5 and 1 or having the number 5 and 1 written over their tops? Does everything related to the number 5 and 1 need to be a politically sensitive topic? Could we still talk about the Labor Day that falls on May 1st? The rebellious ideology is embedded in the mind of Hong Kong protesters, as people have witnessed the incompetence of our government on a daily basis. This movement has been embodying innovation in various ways. No extra commentaries are needed. This is the true essence of “be water.”
Similarly, Poland and the Czech Republic in the 60s were under greater oppression than what we have been seeing in recent Hong Kong; however, “life always finds a way.” We now live in a globalized world where “colluding foreign forces” is unnecessary, with the help of our overseas brothers and sisters to amplify the pro-democracy messages to the international community. We shall acknowledge the fact that dwelling on the past does no one any good for sustaining this movement.
You could be someone who lacks the courage to venture out of the comfort zone, refuses to adapt to having multiple careers, resists leaving the physical location of Hong Kong, fears to put on a yellow helmet (a pro-democracy symbol), and chooses to be enslaved by the ruling party. Even if you are a Blue Ribbon ( pro-established or pro-Beijing person), as long as you are not a part of the most extreme 20% of the deep Blue Ribbon community, I say you are still a very valuable asset to Hong Kong. In this NSL-enacted Hong Kong, you should give it some thoughts about what advantages you hold that the “new Hongkongers” cannot offer. If you cannot answer this question, then no matter how patriotic you are, you will be eliminated in the next wave of selection. “Survival the fittest.” Even in Chinese companies, they still need Hongkongers to do the due diligence for them. In bureaucratic institutions, the Chinese would still need someone with a creative spirit and an international perspective while putting on a nationalist front.
Many have expressed their concerns toward the implementation of “Indoctrination” in Hong Kong, including some of the pro-Beijing parents. By sending their children to non-state-owned schools, their actions speak louder than their words. The new trend of education has confirmed that the traditional classroom model inherited from the 19th century Prussian teaching is outdated. Through big data, the teaching materials are personalized for individuals; moreover, students may build up their unique libraries of knowledge via their personal experience and curiosity. Regretfully, the new Hong Kong under authoritarian ruling embraces a rigid education system where syllabi and marking scheme is key to grooming the next generation of nationalists. The instructors would be under surveillance, school principals would bend to state-interests policies, and households would monitor each other for anti-government speeches or actions. Apparently, CCP would not succeed in brainwashing anyone with these educational reformations. Perhaps, Tik Tok may be more effective. Personalized education is an irreversible global trend. The authoritarian Hong Kong could butcher education but it could not prevent people from adapting to other alternatives. I would like to believe that the younger generations would harness the power of the internet and seize the opportunities given by an international community that has become more amiable to Hong Kong.
NSL’s main target is those who are “in collusion with foreign forces. How ironic is it to see how the strong connections between Hong Kong and the global community came back to bite per se? I recall reading from a research report, stating that on average every 1 out of 3 to 4 Hongkongers have connections overseas—overseas relatives, holding foreign qualifications or degrees, overseas working experience, having international investments, or having work contacts with foreign employees. Hongkongers have been colluding with the foreign forces before NSL made it a crime. The 2020 Hong Kong is suffering from cultural discontinuity created by the conflicts between the Chinese authoritarian system and the Western democracy system. Soon enough, “mass surveillance enabled by Big Data” vs. “A.I. regulated by privacy concerns” could be a multiple choice question for all Hongkongers. As long as Hongkongers are connected to the global network, we shall not lose our resilience against oppression.
To sum it up, Hongkongers have incorporated the world into “the revolution of our time.” March on and be water. The world we are facing is no longer black and white or binary of any sort. We may not reap what we sow. This is a long-term fight that requires us to be resourceful, as well as being mentally and physically prepared.
You may ask if I have ever wanted to leave Hong Kong. Ironically, since my 18th birthday, I have never stayed in Hong Kong for so long. The past 6 months, aside from pandemic, I have been sentimental toward this land. My profession and residences require me to travel a lot of places. I hardly stayed in Hong Kong for long as I made that decision deliberately 10 years ago. Now you may understand where I am coming from. Thus, I would not change for this NSL-enacted Hong Kong. I would not stay to make a statement, nor would I leave this land to make a stance. To my dear friends out there, my piece of advice has been the same—live like a digital nomad and have your footstep stamped locally and globally. No need to start from scratch. You may join a community that is well-established.
Should I self-censor for my safety? I’ve never been an editorial writer. My rationally words and videos are merely personal expressions of a Hongkonger. I honestly can’t get any more cautious. I am the same Simon Shen, now and always. We should not take any form of harassment or attacks personally.
Before the extradition law and the NSL, CCP had been effectively silencing dissents by sending them on one-way trips to Mainland China (i.e. Causeway Bay Books disappearances). The regime needed no bills to aid its attempt of kidnapping those who dare to voice up. Hong Kong has fallen too fast that no one bothers to attack or criticize the kidnaps. There is no such thing as making something less absurd by talking about it more. The systematic oppression of Hong Kong’s civil freedom does not only come from the without but also the within; especially when nowadays all we could talk about is “safety” and “survival.” It is exactly what CCP wanted for us to believe—we are trapped and our lives depends on our compliance. Hongkongers are being tested for our resilience. If we couldn’t pass this challenge together, how could we stand up tall as proud Hongkongers?
As to making ends meet, I’ve always believed that the global Hongkonger network is a large enough of encomany to support, expand, and give back to Hong Kong. We are all at its mercy, including me becoming a KOL. Within the Hongkonger community, I wish to be more practical and strategic; especially, in terms of elevating our quality of living. CCP is extremely calculative and different from us. It is my deepest belief that when the world sees how irreplaceable Hongkongers are that is the day when we can anticipate change. Before then, we will keep a low profile and prepare for this long battle.
Do expect the next two years to be a long rollercoaster ride with plenty of ups and downs. Hongkongers will only thrive through the hardships. Buckle up, winter is coming.
submitted by baylearn to HongKong [link] [comments]

MAME 0.218

MAME 0.218

It’s time for MAME 0.218, the first MAME release of 2020! We’ve added a couple of very interesting alternate versions of systems this month. One is a location test version of NMK’s GunNail, with different stage order, wider player shot patterns, a larger player hitbox, and lots of other differences from the final release. The other is The Last Apostle Puppetshow, an incredibly rare export version of Home Data’s Reikai Doushi. Also significant is a newer version Valadon Automation’s Super Bagman. There’s been enough progress made on Konami’s medal games for a number of them to be considered working, including Buttobi Striker, Dam Dam Boy, Korokoro Pensuke, Shuriken Boy and Yu-Gi-Oh Monster Capsule. Don’t expect too much in terms of gameplay though — they’re essentially gambling games for children.
There are several major computer emulation advances in this release, in completely different areas. Possibly most exciting is the ability to install and run Windows NT on the MIPS Magnum R4000 “Jazz” workstation, with working networking. With the assistance of Ash Wolf, MAME now emulates the Psion Series 5mx PDA. Psion’s EPOC32 operating system is the direct ancestor of the Symbian operating system, that powered a generation of smartphones. IDE and SCSI hard disk support for Acorn 8-bit systems has been added, the latter being one of the components of the BBC Domesday Project system. In PC emulation, Windows 3.1 is now usable with S3 ViRGE accelerated 2D video drivers. F.Ulivi has contributed microcode-level emulation of the iSBC-202 floppy controller for the Intel Intellec MDS-II system, adding 8" floppy disk support.
Of course there are plenty of other improvements and additions, including re-dumps of all the incorrectly dumped GameKing cartridges, disassemblers for PACE, WE32100 and “RipFire” 88000, better Geneve 9640 emulation, and plenty of working software list additions. You can get the source and 64-bit Windows binary packages from the download page (note that 32-bit Windows binaries and “zip-in-zip” source code are no longer supplied).

MAME Testers Bugs Fixed

New working machines

New working clones

Machines promoted to working

Clones promoted to working

New machines marked as NOT_WORKING

New clones marked as NOT_WORKING

New working software list additions

Software list items promoted to working

New NOT_WORKING software list additions

Source Changes

submitted by cuavas to emulation [link] [comments]

MAME 0.218

MAME 0.218

It’s time for MAME 0.218, the first MAME release of 2020! We’ve added a couple of very interesting alternate versions of systems this month. One is a location test version of NMK’s GunNail, with different stage order, wider player shot patterns, a larger player hitbox, and lots of other differences from the final release. The other is The Last Apostle Puppetshow, an incredibly rare export version of Home Data’s Reikai Doushi. Also significant is a newer version Valadon Automation’s Super Bagman. There’s been enough progress made on Konami’s medal games for a number of them to be considered working, including Buttobi Striker, Dam Dam Boy, Korokoro Pensuke, Shuriken Boy and Yu-Gi-Oh Monster Capsule. Don’t expect too much in terms of gameplay though — they’re essentially gambling games for children.
There are several major computer emulation advances in this release, in completely different areas. Possibly most exciting is the ability to install and run Windows NT on the MIPS Magnum R4000 “Jazz” workstation, with working networking. With the assistance of Ash Wolf, MAME now emulates the Psion Series 5mx PDA. Psion’s EPOC32 operating system is the direct ancestor of the Symbian operating system, that powered a generation of smartphones. IDE and SCSI hard disk support for Acorn 8-bit systems has been added, the latter being one of the components of the BBC Domesday Project system. In PC emulation, Windows 3.1 is now usable with S3 ViRGE accelerated 2D video drivers. F.Ulivi has contributed microcode-level emulation of the iSBC-202 floppy controller for the Intel Intellec MDS-II system, adding 8" floppy disk support.
Of course there are plenty of other improvements and additions, including re-dumps of all the incorrectly dumped GameKing cartridges, disassemblers for PACE, WE32100 and “RipFire” 88000, better Geneve 9640 emulation, and plenty of working software list additions. You can get the source and 64-bit Windows binary packages from the download page (note that 32-bit Windows binaries and “zip-in-zip” source code are no longer supplied).

MAME Testers Bugs Fixed

New working machines

New working clones

Machines promoted to working

Clones promoted to working

New machines marked as NOT_WORKING

New clones marked as NOT_WORKING

New working software list additions

Software list items promoted to working

New NOT_WORKING software list additions

Source Changes

submitted by cuavas to MAME [link] [comments]

Victoria’s Secret: Have the Angels Fallen from Grace? (Interesting article on how the Epstein saga has affected the VS Brand)

Link to article
Link to archive of article: (I recommend archiving every article you come across. I usually use www.archive.is because I find it more user-friendly than The Wayback Machine.)
TEXT OF ARTICLE
Victoria’s Secret: Have the Angels Fallen from Grace?
by Dimitar Ganev | Oct 2, 2019

Victoria’s Secret, the largest lingerie retailer in the US, has been one of the most iconic apparel brands since the 1990s, not least because its sexually charged imaging set the industry’s standard for decades and exerted a strong influence on body image norms. But since 2015, the shares of its parent company L Brands have been dropping as sales keep taking hits from shifting consumer tastes, executive turnovers and emerging competition.
The Victoria’s Secret brand, built on skinny girls and scantily clad lingerie, is now largely perceived as inadequate for a time when consumers’ preferences have moved away from sex appeal and towards empowerment, inclusiveness and comfort. To many, the brand’s traditional marketing strategy, which bets on fashion shows where supermodels walk in stiletto heels and angel wings, seems tone-deaf in the era of #MeToo, which condemns all forms of objectifying women and imposing hard-to-achieve beauty standards.
The Victoria’s Secret Angels, once considered symbols of sexiness, have now started to alienate consumers: a recent study found that 68% of them like the brand “less than they used to” and 60% feel that Victoria’s Secret is “forced” or “fake.” Demand for its products has cooled as up-and-coming rival brands have become more attractive by promoting themselves through unedited images featuring women of more diverse shapes and sizes. The retail giant reported that it will close 53 stores in North America this year, citing a “decline in performance.”
The brand itself admitted that it relied on hypersexualised imaging for far too long and it needs to rethink its identity. At L Brands‘ recent investor day, John Mehas, head of Victoria’s Secret Lingerie, asserted that the company needs to evolve and to reconnect with consumers by launching new products, hiring new executives and using new marketing strategies.
An essential part of the narrative shift would be a more diverse group of models, improving the merchandise, replacing the brand’s marketing chief and “rethinking” its annual Victoria’s Secret fashion show, the only fashion show regularly broadcast around the world, whose ratings keep falling. The brand hinted that network television would no longer be the “right fit” for the event, which has been criticised for being focused on empowering the models who walk in it instead of trying to relate to consumers.
Inclusivity, Diversity and Epstein
Many specialised fashion publications and business outlets embarked on questioning how the once-beloved brand managed to garner such a bad reputation. Analysing the media conversation around Victoria’s Secret in the top-tier English language publications from October 2018 to September 2019, we found that the most often discussed topics were body inclusivity, the company’s ties with Jeffrey Epstein and gender diversity:
The strongest coverage drivers for both the “Body inclusivity” and “LGBTQ+ diversity” topics were the comments which 71-year-old chief marketing officer Ed Razek made in a 2018 interview with Vogue that quickly went viral. Razek, who reportedly has final say over who’s in the televised fashion show, said that he didn’t think Victoria’s Secret‘s fashion event should include transgender or plus-size models because it is supposed to be “a fantasy”.
“Shouldn’t you have transsexuals in the show? No. No, I don’t think we should,” he said. “Well, why not? Because the show is a fantasy. It’s a 42-minute entertainment special. That’s what it is. It is the only one of its kind in the world, and any other fashion brand in the world would take it in a minute, including the competitors that are carping at us. And they carp at us because we’re the leader.”
The remarks prompted a strong backlash from consumers. As with the most severe social media crises, Victoria’s Secret was embroiled in an outrage cascade — outbursts of moral judgment which start to drive the conversation around brands, their products and their corporate messages. In these cases, the virality of moral judgements is facilitated by the fact that most of the content on social media feeds and timelines is sorted according to its likelihood to generate engagement.
The fact that fashion brands in particular face a growing number of crises could be explained by the supposition that fashion items are often taken to be markers of cultural and social identity, and thus are susceptible to be perceived as controversial across social networks. For instance, designers often draw inspiration from other cultures’ traditions, which has recently given rise to accusations of “cultural appropriation”.
Razek later used the company’s Twitter account to issue a formal apology, saying that his remark “came across as insensitive.”
In August 2019, Razek retired just days after the lingerie brand hired its first openly transgender model for its teen label PINK: Brazilian Valentina Sampaio. The hire was generally welcomed by commentators – for instance, Kendall Jenner, daughter of trans icon Caitlyn Jenner, posted “celebrate trans women” to her 98 million Instagram followers.
Meanwhile, media monitoring organisation GLAAD, which deals with lesbian, gay, bisexual and transgender issues, said Sampaio’s move comes as transgender people are becoming more visible in advertising. Examples of the trend include recent campaigns by Calvin Klein, Gap and H&M, while Playboy’s first transgender Playmate appeared in 2017.
Another strong coverage driver within the ‘Body inclusivity‘ topic was the protest outside Victoria’s Secret‘s store on Oxford Street in London, in which protesters stripped to their underwear and held signs demanding more diversity in fashion. To address such concerns, the latest investor meeting saw Victoria’s Secret deciding it will no longer rely on a small group of supermodels to promote its sexy lingerie, in a bid to use more inclusive marketing.
An example of this new strategy was an Instagram post of model Barbara Palvin, which was celebrated for being more body-inclusive, as social media users perceived Palvin to be curvier than the other supermodels. The post received over 780,000 likes in two days, generating 4.2 times the average number of likes, with users commenting that the model looks “normal” and “healthy”.
But the brand wasn’t that successful in managing another crisis: the widely publicised ties between L Brands founder Les Wexner and financier Jeffrey Epstein, an accused child sex trafficker who committed suicide in jail. Although Epstein didn’t actually work for Victoria’s Secret or L Brands, he had control over Wexner’s finances and personal life, according to reporting by The New York Times, and used his connections with Victoria’s Secret to facilitate his alleged crimes.
L Brands tried to distance itself from Epstein, saying it had cut ties with him nearly 12 years ago and disclosing that it had hired outside counsel to review the case. Wexner said: “Being taken advantage of by someone who was so sick, so cunning, so depraved, is something that I’m embarrassed that I was even close to. But that is in the past.”
In many media reports, the ‘Epstein ties‘ topic was closely related to the ‘Sexual harassment‘ topic, which was dominated by a petition urging Victoria’s Secret to take a stand against sexual harassment and violence. The open letter was addressed to Victoria’s Secret CEO John Mehas and signed by more than 100 models, many of whom have worked with the brand in the past, and also by the Model Alliance, an advocacy organisation in the fashion industry, and the Time’s Up movement against sexual harassment which was founded in response to the Weinstein effect and #MeToo.
The petition cited “numerous allegations of sexual assault, alleged rape, and sex trafficking of models and aspiring models”. Several of the company’s photographers have been accused of misconduct, on top of the links with Jeffrey Epstein. A Victoria’s Secret spokesperson said the firm has been in conversations with the Model Alliance “for some time”: “We are always concerned about the welfare of our models and want to continue to have dialogue with the Model Alliance and others to accomplish meaningful progress in the industry.”
Crisis mode
Ed Razek‘s aforementioned controversial comments regarding transgender and plus-size models made him the most often quoted spokesperson in the discussion around Victoria’s Secret:
Razek’s dominance in the conversation underlined the crisis of perception the brand suffers: his remarks were taken by many media outlets as a sign that the brand is unwilling to adapt to the current sociocultural climate. Models who have previously worked with the brand and who had a relatively large share of voice in the media conversation were quick to criticise him. For example. Karlie Kloss and Lily Aldridge posted a photo reading “Trans and GNC [gender non-conforming] people are not a debate” to their Instagram stories.
Karlie Kloss was one of the most vocal critics: she recently told Vogue that she had decided to terminate her relationship with Victoria’s Secret because the image was not “truly reflective” of who she was and the “kind of message I want to send to young women around the world about what it means to be beautiful.” Model Tess Holliday was harsher, leaving a message to Razek on Twitter following his Vogue interview: “Who needs VS anyway? They never supported plus ladies & now they are trying to dis my trans sisters? Hell nah. Kiss my fat ass, [Victoria’s Secret].”
The majority of media reports on Razek’s retirement announcement cited these remarks as one of the key points in his career and highlighted that he was one of the main figures in the highly sexualised beauty ideal put forth by the brand. The crisis of perception was also emphasised by the fact that L Brands CEO Les Wexner, another major corporate spokesperson in the conversation, was quoted primarily in relation to the Epstein scandal.
However, some of the spokespeople portrayed Victoria’s Secret in a positive light. Adriana Lima, one of the best-known Angels, quit the label after two decades and 18 fashion shows with the brand, sharing the news on Instagram with a heartfelt caption: “Dear Victoria, Thank you for showing me the world, sharing your secrets, and most importantly not just giving me wings but teaching me to fly.”
And while she presented the brand positively, some media publications reminded their readers of a an interview she gave to Grazia in 2011 in which she outlined the physical challenges she went through in order to be in shape, especially after her pregnancy.
Angel Behati Prinsloo tried to defend the Victoria’s Secret Fashion Show against the criticism for its lack of transgender models and diverse body types. In an interview with Elle, she explained what the show stands for: ‘There’s a lot of talk about everything but I think people need to also understand that it’s a show. It’s not saying negative or positive about any body type, it’s ‘this is who they are’.”
In the meantime, Barbara Palvin was named as a Victoria’s Secret Angel after the successful Instagram post which customers perceived to be more body-inclusive. She announced the news to fans also via Instagram and her hire was generally interpreted by the media as a sign that the label is finally starting to listen to its critics.
CEO John Mehas‘ comments about the brand’s marketing shift were met with similar enthusiasm, especially his plans to include messaging that responds to the #MeToo movement. But the most warmly welcomed move was the hire of Valentina Sampaio: although some publications suggested that the brand’s first openly transgender model came too late, most commentators said that the retailer has finally moved in the right direction.
Lingerie wars
While Victoria’s Secret is caught up in a fierce discussion, L Brands‘ other flagship label, Bath & Body Works, a personal-goods retailer, continues to report strong earnings, supporting its struggling parent. Many reports on Victoria’s Secret‘s controversial reputation outlined this development, making Bath & Body Works the most frequently mentioned brand in the conversation:
While L Brands is firmly focused on the Victoria’s Secret turnaround story, Bath & Body Work is perceived as staying relevant with updated stores and new product tests, maintaining a wholesome image as “America’s sweetheart of beauty brands.” Its loyal core consumer base of millennial women is boosted by fan blogs and YouTube accounts dedicated to sharing new products. The brand also plans to ramp up volume by having a digital makeover for the first time in India.
Investors have even started pressuring L Brands to make Bath & Body Works a standalone company which would not be associated with Victoria’s Secret. Hedge fund Barington Capital, whose CEO James A. Mitarotonda was one of the few corporate spokespeople in the conversation, sent a lengthy letter to L Brands CEO Les Wexner arguing for a spinoff.
But after Bath & Body Works posted its first unchanged quarter of store traffic in five years during 2019’s second quarter, Jefferies analyst Randal Konik suggested that the best days for the bath and candle retailer may be over. Konik also said that the teen brand PINK is the next sore spot for L Brands, with sales falling by low double digits in the fourth quarter, as the label is “without fans and rudderless.”
ThirdLove, American Eagle Outfitters and Savage X Fenty were identified as the main competitors which have capitalised on Victoria’s Secret’s reputational struggles. ThirdLove, an online bra startup which was launched in 2013, was perceived as coming head to head with Victoria’s Secret as it focuses on inclusive sizing and marketing, which have helped its annual sales to grow at a rate of 180% for the past four years.
The brand opened its first pop-up store in New York in July 2019, putting itself in direct competition with Victoria’s Secret as the lingerie giant had a store less than a 10 minutes’ walk away. ThirdLove also joined the discussion around Razek’s comments, taking out a full-page ad in The New York Times, in which co-founder and co-CEO Heidi Zak said she was appalled when she read them: “I’ve read and re-read the interview at least 20 times, and each time I read it I’m even angrier. How in 2018 can the CMO of any public company — let alone one that claims to be for women — make such shocking, derogatory statements?”
When asked whether Victoria’s Secret was worried its customers might now be looking for something different, Razek mentioned ThirdLove: “We’re nobody’s ThirdLove,” Razek said. “We’re their first love. And Victoria’s Secret has been women’s first love from the beginning.”
American Eagle Outfitters was also viewed as one of the main companies to break Victoria’s Secret‘s grip on the apparel industry by offering fitting bras and using messaging which pitches inclusiveness and comfort over sex appeal. Its activewear and lingerie brand Aerie has built an image of an “anti-Victoria’s Secret” label with untouched ads featuring models of all shapes and sizes. Kyle Andrew, American Eagle’s CMO, said the company’s success is due to its willingness to experiment and find ways to better listen to its teen customer base.
Rihanna’s Savage X Fenty recent show, streamed on Amazon Prime, has been making headlines everywhere, with commentators saying it was everything that Victoria’s Secret’s annual runway show wishes it could be by featuring models of all shapes, sizes, and ethnic backgrounds, with a clear focus on body inclusivity and acceptance.
Meanwhile, retail corporation Target also tried to capitalise on Victoria’s Secret’s struggles with a strategy similar to ThirdLove, American Eagle Outfitters and Savage X Fenty: it launched a new bra and underwear brand called Auden with a campaign featuring women “in all different shapes and sizes.”
Nike was mentioned as one of the brands which have gotten ahead of the curve with their socially-conscious marketing efforts featuring ex-NFL quarterback Colin Kaepernick, who had participated in racial justice demonstrations during national anthem ceremonies. Fast-fashion brand H&M got involved in the discussion for selling a $199 bra similar to Victoria’s Secret’s $1 million Fantasy Bra as part of its collaboration with Moschino.
Victoria’s Secret‘s reputational woos come at a time when the fashion and apparel industries occupy a central place in the extensively covered #MeToo movement and play a major role in ongoing media discussions around gender and identity. Since such issues naturally polarise consumers, brands which are dealing with products directly related to them are regularly caught up in fierce debates.
The growing importance of the debates around gender in the fashion industry has also been highlighted in the accelerating gender-neutral trend. The latest seasons have seen luxury brands like Gucci, Saint Laurent and Haider Ackerman combining menswear and womenswear runway shows, Others, such as Proenza Schouler and Rodarte, have started showing women’s pre-collections or women’s ready-to-wear during the back-to-back menswear and couture calendar. Meanwhile, fast-fashion labels such as Zara started releasing ungendered collections with models of both sexes dressed in the same clothes.
There are also a growing number of new brands like the Phluid Project, Agender and Rebrand which are built around the concept of non-binary dressing. Beyond fashion houses, the trend has also been recently reinforced by the Council of Fashion Designers of America (CFDA), which added a unisex/non-binary option for New York Fashion Week. Spokespeople for the CFDA explained that this decision came as a response to “a growing number of designers whose collections are not delineated by gender”, which “reflects the cultural momentum.”
submitted by ALiddleBiddle to Epstein [link] [comments]

Alternatives to Google products and services

My list of Google products came from https://en.wikipedia.org/wiki/List_of_Google_products. I'll use a * on the products and services that I personally use.
Search - DuckDuckGo*, Qwant, Startpage, Ecosia
Images (search for image by text) - DuckDuckGo*
Images (search for similar images) - Tineye*
Youtube (watch videos) - Invidious* (desktop), Newpipe* (mobile), youtube-viewer, smtube
Youtube (host videos)- lbry (appears decentralized), vimeo (centralized)
News - DuckDuckGo*
Shopping - DuckDuckGo*
Custom search - DuckDuckGo*
Translate - DeepL*, Bing Translator (Operated by Microsoft, a company with a history of privacy violations, so it should only be used if a more reputable translator doesn't have a language you need)
Play Music - Invidious (offers an integrated youtube downloader and the ability to stream audio only)*
Blogger - Writefreely, Medium (centralized, aggressively markets their premium plan)
Gmail - Protonmail*, Tutanota
Hangouts - Wire*
Calendar, Contacts - Nextcloud Calendar*, Korganizer*, AOSP Calendar*, AOSP Contacts*, Davx5*
Docs, sheets, slides - Libreoffice*, a Nextcloud app whose name I forgot
Sites - Wordpress (WYSIWIG editor), Gitlab Pages (static hosting, must know at least HTML or find an HTML generator)*
Drive - Nextcloud* (can run on your own hardware or you can find a provider)
Classroom - Mailing lists, private Discourse (is that even possible?)
reCAPTCHA - hCaptcha (can't tell if it is open source)
Safe Browsing - Good judgement*
Titan security key (Can someone recommend something that isn't as overpriced?) - YubiKey, Librem key
Maps - OpenStreetMap*
Analytics - Piwik, Open Web Analytics, eAnalytics
Android (proprietary versions) - LineageOS, OmniROM, AOSP, GNU/Linux
Chrome OS - Lightweight GNU/Linux such as Lubuntu
Google TV, Android TV - Raspberry Pi
Sync - WebDAV*
Files - Simple File Manager*
Chrome - Chromium (as long as you use a non-Google build, most similar experience to Chrome), Brave (most privacy by default, easiest to recommend to others)*, Firefox (not based on any Google software)
Photos - The auto upload function in the Nextcloud app, Syncthing*
Authenticator - AndOTP*, TOTP function of keepassXC*
AMP - Not filling your website with tons of crap*
Cast - Video cables*
Stadia - On-site hardware
Play Store (literally forgot that existed) - F-Droid (only serves FOSS software)*, G-Droid (F-Droid client), Aurora Store (download apps from Google Play), Yalp Store (got abandoned, make sure you get the fork that is published on F-Droid)*
Products and services that I do not have alternatives for (for most of them, it is because I never used them or anything like them): Finance, Books, Patents, Scholar, Dataset search, Hotel Finder, Alerts, Assistant, Flights, Groups, Ads, Marketing Platform, Ad Manager, AdMob, AdSense, Ad Grants, Cultural Institute, Arts and Culture, Feedburner, 3D Warehouse, G Suite, Hire, Bookmarks, boutiques.com, Business Solutions, Charts, Domains, Keep, Poly, SMS Channels, Speak to Tweet, Voice, Fonts, Cloud Search, App Engine, PageSpeed tools, Search Console, Translator Toolkit, GN, Googletest, Forms, Street View, My Maps, Maps Gallery, Mars, Moon, Sky, Transit, Santa Tracker, Zygote Body, Smarty Pins, Surveys, correlate, firebase, fusion tables, public data explorer, trends, ngram viewerEarth, Input Tools, Japanese Input, Pinyin, Toolbar, Android Studio, Web Designer, Nik Collection, Tilt Brush, Offers, Product Search, Tez, Pay, quick draw, catalogs, Goggles, Tango, Play Newsstand, Podcasts, One Today, Shopper, Sky Map, Primer, Now, Waze, Gboard, Live Transcribe, WearOS, Android Auto
Google products that don't need alternatives due to being open source and non-Big Brother (as far as I know): Dart, Flutter, Go, Web Toolkit, Gerrit, Bazell, TensorFlow, AOSP, Chromium (as long as you don't use a Google-provided build), Fuschia
Commonly recommended alternatives that I am not recommending:
Signal - It uses phone numbers as identifiers, and the only authentication needed to have messages sent to you is proof that you control the phone number. This means that while your old messages cannot be hacked, it is very easy to use social engineering to compromise it. Carriers do not protect phone numbers very well. There are many well-known cases of people calling customer service pretending to be the target and claiming that they need the phone number to be transfered to a different SIM card. The government or cell phone service can also do that. Afterwards, all an attacker needs to do is convince the target to transmit the information again. Signal is supposed to have safety numbers to prevent this, but it seems like most users will ignore that warning. Even if they don't, an attacker could probably convince most users that they just lost their phone, got a new one, and forgot about the security number thing. Also, the heavy reliance on phone numbers means that you cannot use it without one.
Riot - End to end encryption is in beta and is not enabled by default. I cannot recommend a communication app that does not force end to end encryption.
Telegram - The published source code is behind the published app, so the official binary isn't really open source. Not everyone is going to go out of their way to make sure they download an unofficial binary. End to end encryption is optional.
WhatsApp - Why does anyone think this is private? It is closed source and developed by a company that regularly invades privacy (Facebook) and seems to have no intention to change. It also appears to have the same phone number issues as Signal.
Safari - It is closed source and developed by a company with a history of privacy violations. (Yes, I said it. I don't care what Apple puts in their marketing, I don't trust them. https://stallman.org/apple.html#spying, https://www.gnu.org/proprietary/malware-apple.html#back-doors, https://www.gnu.org/proprietary/malware-apple.html#surveillance)
Cloudflare DNS - It is literally run by a man-in-the-middle-as-a-service company that monitors all traffic to and from the websites, supposedly to protect against DDOS attacks but we have no way to tell if they are doing something evil. I'm not giving them more data about what non-Cloudflare sites I access, and I certainly don't want to support the company that makes using Tor a huge pain.
ISP's DNS - ISPs often spy on customers. Using a DNS server means telling it what site you want to use, so ISP's DNS servers cannot be trusted.
Freenom DNS - Very sketchy business practices
Feedback is appreciated.
submitted by Windows-Sucks to thehatedone [link] [comments]

Affordable Binary Option Strategy  Trend Reversal ... Best Binary Option Strategy With Jony Alam - Trading With ... Power Of Trend Direction Trading Indicator Binary - IQ ... 2 Min Strategy CONFIRMATION! - Best Binary Options ... Binary Options Strategy: Fibo Trend - YouTube Earn 17% every 5 seconds Trends indicator binary options ... 2 Minutes Strategy Binary Options 2020 (IQ Options) - YouTube

Entries could also be used with binary options, although some testing and monitoring of volatility would be required to estimate the ideal expiry time for various financial instruments. Figure 1 shows this basic strategy applied to a 5-minute stock chart. Figure 1. Apple (AAPL) 5-Minute Chart with CCI Trades. In the example above the strategy worked well, although it can be prone to triggering ... Technical indicators suitable for binary options trading should incorporate the above factors. One can take a binary option position based on spotting continued momentum or trend reversal patterns ... Binary Options Trend Monitoring, código de bono bet90 hasta $ en deportes - en, wie funktioniert geld verdienen von zu hause aus nz cfd, beste binaire trigger voor sig mpx The trend report provides a groundbreaking decision-making tool for launching new products, using visual information and data content to communicate the latest social trends and their impact on ... Binary options strategies are all different, but they have three common elements: This strategy is often referred to as the bull bear strategy and focuses on monitoring, rising, declining and the flat trend line of the traded asset. This indicator is worth trying to your test account and we hope that you can increase the profitability of your binary options. This indicator is build based on ... Binary Options Trading Requires Very Little Experience. The common misconception is that binary options trading and forex trading can only be done by one that has a certain amount of experience in the area. There is no requirement to have any previous experience in financial trading and with a little time, any skill level can grasp the concept of binary options trading. Binary Options Trend Oriented Trading. You do not want to learn difficult mathematics and practice on analytical tools? You still can make huge profits through binary options by doing trend-oriented trading. In this type of trading, you must consider the trend; the trading asset is following, to make successful trades. The trader must emphasize on getting knowledge about finding specific ... Trend trading is the basic for many advanced trading strategies, but it also can be used as main strategy for binary trading! The trend trading strategie I want to show you here uses Call / Put binary options with an end of the day expiration, other strategies are using hourly, half an hour or even 60 seconds binary options! The trick is to use ... Free Binary Options Ultimate Trend Signals Indicator. Ultimate Trend Signals – is a combination of signal indicators and information that works, according to developers on the most advanced algorithms of profitable trading. Ultimate Trend Signals uses the indicators RSI, MACD and moving average for the analysis of the current situation, the results of which are displayed on the information ... Making Binary Options Monitoring EASY. No need to open many charts and timeframes to check for a Trading Opportunity. The scanner does all the hard work for you. THE POWERFUL INTERFACE. Blue Boxes - Buy Signal. Red Boxes - Sell Signal. Numbers Inside Box - Actual Win Rate. White Numbers - Actual Win Rate > Min Win Rate . Black Numbers - Actual Win Rate ≤ Min Win Rate . EASY NAVIGATION ...

[index] [865] [22851] [19220] [2583] [17789] [11721] [25766] [11150] [23678] [25340]

Affordable Binary Option Strategy Trend Reversal ...

Best Binary Options Strategy - 80%+ Winning Binary option/IQ option Winning Strategy Using My Own PP Trend Crasher. You can purchase/buy my signal service. For ... 💰💲FULL BEGINNER? Join My PERSONAL TRAINING!💴💵 BLW Trading Academy: http://www.blwtradingacademy.com/ Live Trading Signals HERE!🔙💲💹Join My ... 💹 Fibo Trend Binary Options Strategy is a trading system based on the indicators of trend following and on the Fibonacci Ratio. This Binary Options Strategy ... ★★★ Recommended For You ★★★ Free Download Most Reliable Forex Metatrader 4 Platform https://bit.ly/30NrtLP Reliable Binary Broker with a ★Profit of up ... IQ Options -https://affiliate.iqoption.com/redir/...Please subscribe and leave a like for more videos.Online trading is a very risky investment/profession. It i... Affordable Binary Option Strategy Trend Reversal Indicator Convert Detailed Better Binary Indicator Download: https://provenbinarybot.com/trend-reversal-... INTRODUCING THE TOUCHSCALPER VERSION 4.1 BINARY OPTIONS AUTOMATED TRADING BOT FEATURES Automated Trade delay Stop Loss Take Profit/ sell at market in scalper...

https://binary-optiontrade.matchrid.cf