Searched Projects

Tags: game

project.name
14 Stars     785 Views
User:

Play Roulette / Programmable Computer

Play Roulette / Programmable Computer

WELCOME TO MY PROGRAMMABLE COMPUTER! 

DESCRIPTION:

You can code your own program or play a precoded game named "Play Roulette!"

It is a working CPU using fifteen 16-bit instructions that can by coded to develop a reasonable program containing up to 256 rows of machine code.  I have also made some input/output features to make using of the computer as comfortable as possible. 

There are two 16Byte Registers named "General Register A", "General Register B" and two 16bit registers named "Status Register A" and "Status Register B". Thanks to given instructions you can manipulate DATA in the registers (write, read, copy, delete etc.), You can make some calculations (adding, subtraction, multiplication, comparation etc.) You can also do some logic operations (and, or, not etc..) 

You can make a list of this instructions (program rows) and thanks to implemented Program Counter you can run them as programs. For this reason there are also instructions to jump in your program rows (You can make any combination of absolute jump, relative jump forwards or backwards, unconditional jump, conditional jump etc..) 

Last but not least: There are instructions that will PRINT given data to TTY display component in numeric or ASCII format. And there is also a numeric keyboard designed for easiest possible user input while the program is running.  

HOW TO PLAY ROULETTE:

"Play Roulette" is an easy program "simulating" the roulette. The source code could be found in the "Play Roulette" Sub-circuit. 

Story: 

You are a hazard player. At the begining you have cash 100 dollars . Then you can bet to a number or to a color. If you hit the right number, you triple the amount of money, you have bet. If you dont hit, you lose all the money, you have bet. If you hit the right color (red or black) you double the amount of money you have bet and so on.. 

Before you play:

Make sure the "POWER" value is set to "1"

Make sure the "STOP CLOCK" is set to "0" 

Make sure the "CHOOSE SOURCE" value is set to "1".  

In case of unexpected behaviour press the RESET button

When you play:

If the program runs properly, it should first load some data, then it will give you some instructions like: Choose a number to bet or choose how much money are you going to bet and so on..  All this tasks could be done via the numeric keyboard below. 

The game ends when your cash is under 0 or over 255. If you want to play again, just press RESET button. 

The speed of game depends on the clock time. Unfortunately even if the best frequency is set (50 ms), the game is very slow. So be patient please. 

The game have some bugs for sure. Sorry for them! It is not designed to entertain somebody :D It is designed to test abilities of my Computer.  

HOW TO CODE YOUR OWN PROGRAM:

On the left side in the project you can see 256 16bit inputs connected to the CPU. There you can code your own program using 16 bit instructions.

  • First 4 bits contain the code for the instruction (0000 to 1111)
  • Other 12 bits contain given PARAMETERS or DATA that could be encoded in 6 possible ways depending on what instruction you currently use

INSTRUCTION SET: 

0000: WRITE (writes given 8bit DATA to a given ADRESS of General Register A)  

0001: READ (reads 8bit DATA from given ADRESS of given REGISTER)

0010: DEL (deletes DATA from given ADRESS of given REGISTER) 

0011: COPY (copies DATA from given ADRESS of given REGISTER to an other given ADRESS of given RESTER

0100: IS EQUAL (compares DATA from given ADRESS of given REGISTER with an other DATA from given ADRESS of given REGISTER. If both are equal, then it writes "1" to ADRESS 1000 of Status Register B. Otherwise it writes "0". - This specific adress is reserved for RESULT of "IS EQUAL" instruction. 

0101: IS BIGGER (compares DATA from given ADRESS of given REGISTER with an other DATA from given ADRESS of given REGISTER. If DATA from the first one are bigger than from the second one, then it writes "1" to ADRESS 1001 of Status Register B. Otherwise if writes "0". This specific adress is reserved for RESULT of "IS BIGGER" instruction

0110: AND (makes logic AND with DATA from given ADRESS of given REGISTER and an other DATA from given ADRESS of given REGISTER. If the logic AND is true, then it writes "1" to ADRESS 1010 of Status Register B. Otherwise it writes "0".  This specific adress is reserved for RESULT of "AND" instruction.

0111: OR (makes logic OR with DATA from given ADRESS of given REGISTER and an other DATA from given ADRESS of given REGISTER. If the logic OR is true, then it writes "1" to ADRESS 1011 of Status Register B. Otherwise it writes "0". This specific adress is reserved for RESULT of "OR" instruction.

1000: ADD (adds DATA from given ADRESS of given REGISTER to DATA from an other given ADRESS of given REGISTER. The RESULT is then stored to ADRESS of the first one of this two. (The DATA from the first one given ADRESS of given REGISTER are overwrited by the RESULT of adding). If the result is bigger than 255 (11111111), then "1" is written to ADRESS 1100 of Status Register B and the RESULT of adding is not provided and the Program Counter is not incremented so the program STOPS!!!  Also the red diode "ERR OVF" should be enlightened. This ADRESS  (1100 od Status Register B) named ERROR OVERFLOW is reserved for  all error overflow situations. 

1001: SUB (substracts DATA from given ADRESS of given REGISTER from DATA from given ADRESS of given REGISTER. (The second one is substracted from the first one).  The RESULT is then stored to ADRESS of the first one of this two.  (The DATA from the first one given ADRESS of given REGISTER are overwrited by the RESULT of substraction).  If the result is lower than 0 (00000000) , then "1" is written to ADRESS 1100 of Status Register B and the RESULT of substraction is not provided. The Program Counter is not incremented so the program STOPS!!! Also the red diode"ERR OVF" should be enlighted. This  specific ADRESS  (1100 od Status Register B) named ERROR OVERFLOW is reserved for  all error overflow situations. 

1010: MULTIPLY (multiplies DATA from given ADRESS of given REGISTER with data from an other given ADRESS of given REGISTER. The RESULT is then stored to adress of the first one of this two. (The DATA from the first one given ADRESS of given REGISTER are overwrited by the RESULT of multiplication) If the result is bigger  than 256 (11111111) , then "1" is written to ADRESS 1100 of Status Register B and the RESULT of multiplication is not provided. The Program Counter is not incremented so the program STOPS!!! Also the red diode"ERR OVF" should be enlighted. This  specific ADRESS  (1100 od Status Register B) named ERROR OVERFLOW is reserved for  all error overflow situations. 

1011: JUMP (canges the value of Program Counter variable that defines what row of program should be performed. 

There are 4 possible MODES of jumping depending on given parameter and format of code: It is: 

  • 1/ ABSOLUTE JUMP to given position saved on given ADRESS of given REGISTER,
  • 2/ ABSOLUTE JUMP to given position  
  • 3/ RELATIVE JUMP to given amount of rows forward
  • 4/ RELATIVE JUMP to given amount of rows backward

There are also 4 possible CONDITIONS that coud be combinated with each MODE 

  • 1/ NO CONDITON - the JUMP is provided every time
  • 2/  JUMP if IS EQUAL is true - the JUMP is provided only if on ADRESS 1000 of Status Register B is stored "1" (Result of "IS EQUAL" instruction is always stored on this ADRESS)
  • 3/ JUMP if IS BIGGER is true - the JUMP is provided only if on ADRESS 1001 of Status Register B is stored "1" (Result of "IS BIGGER" instruction is always stored on this ADRESS)
  • 4/ JUMP if AND is true - the JUMP is provided only if on ADRESS 1010 of Status Register B is stored "1" (Result of "AND" instruction is always stored on this ADRESS)

1100: RANDOM (writes a random number of given maximal value to given ADRESS of given REGISTER 

1101 NOT USED

1110:  LOAD EXT (provides HALT function - the Program Counter is not incremented until user inputs some DATA using the numeric keyboard.  This user DATA are then written to given ADRESS of given REGISTER

1111: PRINT EXT (prints DATA from given ADRESS of given REGISTER to the TTY display. This 8bit DATA could be represented as number (0-255) or as ASCII sign. It depends on given parameter

Detailed formats how to compose the 16bit instruction for each of this 15 cases is described inside the project. In the Play Roulette Sub-circuit you coud find inspiration.  

 

EXAMPLE OF MACHINE CODE:

0000 0001 01010101 

This will write DATA  "01010101" to ADRESS 0001 in General Register A.

0011 0001 00 0001 01 

This will copy DATA from ADRESS 0001 of General Register A (00) to ADRESS 0001 of General Register B (01)

1000 0001 00 0001 01 

Then this will ADD DATA from ADRESS 0001 of General Register A (00) to ADRESS 0001 of General Register B (01) and the RESULT is then stored to ADRESS 0001 of General Register A (The original DATA in first given REGISTER are overwriten by the RESULT) 

FEEL FREE to ask questions and give me feedback. You can contact me via [email protected] 

THANKS AND NOTES:

I would like to THANK to the team of developers of Circuit Verse. It is a fntastic product and I learned a lot! 

Two months ago my knowledge of logic gates was ZERO.. Literally ZERO. I have no other education in this area. Everything what is done in this project I have Iearned during two months of recent Coronavirus quarantine... :))   Thanks to Circuit Verse, Youtube and Wikipedia! 

I am not an IT professional at all. Actually I am a journalist. I did not study any IT school, I did not systematicaly study existing CPUs or computer architectures. Everything in this project is more or less my own invention. It means there are many mistakes and bad solutions. Therefore I will be extremly glad to get any feedback from anyone who really understands this area. 

Thank you and sorry for my weak english!

Martin


project.name
1 Stars     202 Views

tiny PONG

tiny PONG

Tiny PONG


The blue LED at the bottom of a "DISPLAY" is a "PADDLE".
You can move it to the right by keep pressing the "RIGHT" button.

The red LED at the top is a "BALL".

Game stops when you fail to return the BALL.
Press (and hold) the "RESET" button to restart.


project.name
0 Stars     83 Views
User:

DnD_lock

DnD_lock

Just a door lock puzzle for a D&D game.


project.name
4 Stars     234 Views

TicTacToe Machine

TicTacToe Machine

click reset before beginning.

choose your location with the ''<'' and ''>'' buttons then press ''enter'' to add it to the board.

after either player wins you can go to the next round by clicking the "next round" button if the light next to it is on and the machine will add 1 point to the winner.in the case of a Tie, the board needs to be full in order to go to the next round and it will not add points to either player.

in the case of a Tie, the board needs to be full in order to go to the next round and it will not add points to either player.


project.name
0 Stars     59 Views

tic tac toe with no reset or win, just click a total of 10 times to reset(including the game)

tic tac toe with no reset or win, just click a total of 10 times to reset(including the game)

project.name
0 Stars     70 Views

MHRD

MHRD

A CPU inspired by the CPU from the MHRD game where you need to build one. In order to pass the game, I made a CPU from the game in this simulator and then moved it back into the game, and that's how I finished it.


project.name
1 Stars     37 Views

Jump over game

Jump over game

project.name
1 Stars     95 Views
User:

a tic tac toe circuit! press a button on the controller(the square with 9 buttons) to make a move, and the reset button to start over. X goes first, X and O switch automatically


project.name
1 Stars     69 Views
User:

Dice driver

Dice driver

A basic dice led configuration driver circuit which was created using k maps and a counter to display all possible values from the dice.


project.name
0 Stars     20 Views

Untitled

Untitled

project.name
1 Stars     58 Views
User:

Obstacle escape game

Obstacle escape game

Use the button inorder to jump from left to right and vice vera and try avoiding the incoming obstacles.

If you collide with it you die and can restart using the restart button given at the bottom.

Change the difficulty by reducing the timing setting of the clock and good luck :D.





project.name
1 Stars     30 Views

Simple pixel moving and fruit game using ijkl keys

Simple pixel moving and fruit game using ijkl keys

use your keyboard keys to move a pixel around 8x8 screen to get pink fruit

set clock to maximum speed and select keyboard then try ijkl keys


project.name
0 Stars     435 Views
User:

Are there effective live betting strategies?

Are there effective live betting strategies?

Are there effective live betting strategies?


project.name
0 Stars     23 Views

Casino

Casino

The Rise of Online Casinos: A Comprehensive Guide

Over the past decade, the online casino industry has experienced exponential growth, revolutionizing the way people experience gambling. With the convenience of playing from home, an expansive variety of games, and constant innovations in technology, online casinos have become a global phenomenon. In this article, we'll explore the factors contributing to the rise of online casinos, the different types of games available, the importance of security, and tips for choosing the right platform.

The Evolution of Online Casinos

The first online casino was launched in 1996, paving the way for a digital transformation in gambling. Back then, online casinos were relatively simple, with basic graphics and limited game options. However, as technology progressed, so did the online gaming experience. Today, modern online casinos boast high-definition graphics, immersive soundtracks, and even live dealer games that simulate the real casino experience.

One key factor in the rise of online casinos is accessibility. Traditional casinos often require travel, time, and a formal setting. Online casinos, on the other hand, allow players to enjoy their favorite games from the comfort of their own homes, at any time of day. This convenience, combined with the increasing penetration of smartphones and fast internet, has made gambling more accessible to a wider audience.

Types of Online Casino Games

The variety of games available at online casinos is one of the major attractions for players. From classic table games to innovative slots, online platforms cater to every type of player. Below are some of the most popular categories of online casino games:

1. Slots

Online slots are arguably the most popular games in online casinos. With themes ranging from ancient Egypt to futuristic science fiction, slots offer endless entertainment. The mechanics of these games are simple—players spin the reels and hope to land matching symbols to win. Some slots even come with special features like free spins, bonus rounds, and progressive jackpots, which can lead to life-changing wins.

2. Table Games

For players who enjoy a more traditional casino experience, online table games such as blackjack, roulette, and poker are available. These games require a mix of skill and luck, making them a popular choice for seasoned gamblers. Many online casinos offer different variants of these classic games, such as American and European roulette, Texas Hold'em poker, and more.

3. Live Dealer Games

A relatively recent innovation, live dealer games bring the excitement of a physical casino directly to your screen. Players can interact with professional dealers in real-time through live video streaming. Games like live blackjack, live baccarat, and live roulette allow players to experience the thrill of a real casino without leaving home. The social aspect of these games, combined with high-definition visuals, creates a truly immersive experience.

4. Specialty Games

Online casinos often feature a variety of specialty games that don't fit into traditional categories. These include bingo, keno, scratch cards, and virtual sports betting. These games offer quick, easy-to-play options for those looking to take a break from more complex table games or slots.

Security and Fair Play in Online Casinos

When it comes to gambling online, security and fairness are paramount. Reputable online casinos implement several measures to ensure a safe and secure gaming environment for their players. Here are some of the key aspects to consider:

1. Licensing and Regulation

The first thing to look for in an online casino is whether it is licensed and regulated by a trusted authority. Regulatory bodies such as the Malta Gaming Authority (MGA), the UK Gambling Commission (UKGC), and the Curacao eGaming license ensure that the casino operates within legal guidelines and adheres to strict standards of fairness and transparency.

2. Encryption Technology

To protect players' personal and financial information, online casinos use advanced encryption technologies. Look for platforms that use SSL (Secure Socket Layer) encryption, which ensures that all data transmitted between the player and the casino is securely encrypted and cannot be accessed by third parties.

3. Random Number Generators (RNGs)

For games to be fair, the outcome must be random. Trusted online casinos use RNGs to ensure that the results of their games are completely unpredictable and unbiased. Independent auditing firms, such as eCOGRA and iTech Labs, often certify the fairness of these RNG systems, giving players peace of mind that the games are not rigged.

Choosing the Right Online Casino

With thousands of online casinos available, it can be challenging to choose the right one. Here are some factors to consider when selecting an online casino:

1. Game Selection

The first thing to consider is the variety of games offered by the casino. If you prefer a specific type of game, such as slots or live dealer games, make sure the platform provides a diverse selection of options in your preferred category.

2. Bonuses and Promotions

Most online casinos offer bonuses and promotions to attract new players and retain existing ones. These can include welcome bonuses, free spins, cashback offers, and loyalty programs. While these promotions can be appealing, it’s important to read the terms and conditions carefully. Pay close attention to wagering requirements, which dictate how many times you must play through the bonus before you can withdraw your winnings.

3. Payment Methods

Another important factor to consider is the availability of payment methods. The best online casinos offer a variety of deposit and withdrawal options, including credit/debit cards, e-wallets (such as PayPal, Skrill, and Neteller), and cryptocurrency. Additionally, check the withdrawal processing times, as some casinos process payments faster than others.

4. Customer Support

Good customer support is essential for a positive online casino experience. Look for platforms that offer multiple support channels, such as live chat, email, and phone. The support team should be responsive and knowledgeable, able to assist with any issues that arise during your gaming experience.

5. Mobile Compatibility

In today's world, many players prefer to gamble on their smartphones or tablets. The best online casinos offer mobile-friendly websites or dedicated apps that allow you to enjoy your favorite games on the go. Ensure that the casino’s mobile platform is smooth, responsive, and offers the same features as the desktop version.

The Future of Online Casinos

The online casino industry shows no signs of slowing down. With advancements in virtual reality (VR) and augmented reality (AR), the future of online gambling promises even more immersive and interactive experiences. VR casinos are already emerging, where players can explore virtual casino floors and interact with other players in real-time.

Additionally, blockchain technology is becoming more prevalent in online casinos, offering greater transparency, security, and anonymity for players. With the rise of cryptocurrency, we can expect to see more casinos accepting Bitcoin, Ethereum, and other digital currencies as payment methods.

Conclusion

Online casinos have transformed the gambling industry by offering a convenient, diverse, and secure platform for players around the world. Whether you’re a fan of slots, table games, or live dealer experiences, there’s an online casino out there to suit your preferences. By understanding the key factors to consider when choosing a casino—such as security, game selection, and bonuses—you can ensure a safe and enjoyable gaming experience.

As the industry continues to evolve, players can look forward to even more innovative gaming experiences, from virtual reality to blockchain-based platforms. But as always, it’s important to gamble responsibly and choose platforms that prioritize security and fair play.