Non-canonical terminal mode and non-blocking input to nasm

The idea of ​​writing a game in assembler language, of course, is unlikely to come to anyone by itself, but it is such a sophisticated form of reporting that has long been practiced in the first year of the MSU MSU. But as progress does not stand still, both DOS and masm become history, and nasm and Linux come to the forefront of training bachelors. Perhaps in ten years the management of the faculty will discover python, but this is not the issue now.
 
 
Programming in assembler for Linux, with all its advantages, makes it impossible to use BIOS interrupts and as a result impairs functionality...
+ 0 -

How to compile a DOS COM file with the GCC compiler &lt;{short}&gt; &lt;{full}&gt; <div class="post__text post__text-html js-mediator-article"> <font color="#808080"> The article was published on December ? 2014 </font> <br>   <i> Update from 2018:

How to compile a DOS COM file with the GCC compiler     The article was published on December ? 2014     
  Update from 2018: RenéRebe made on the basis of this article  Interesting video  (     The article was published on December ? 2014     
  Update from 2018: RenéRebe made on the basis of this article  Interesting video  (<{full}>
The article was published on December ? 2014
 
Update from 2018: RenéRebe made on the basis of this article
Interesting video
( <{short}>The article was published on December ? 2014  Update from 2018: RenéRebe made on the basis of this article Interesting video ( The article was published on December ? 2014  Update from 2018: RenéRebe made on the basis of this article Interesting video ( ? part ?)   Last weekend I participated in Ludum Dare # 31 . But even before the announcement of the conference topics because of its recent hobby I wanted to do an old school game under DOS. The target platform is DOSBox. This is the most practical way to start DOS-applications, despite the fact that all modern x86 ...
+ 0 -

8088 MPH: we will break all your emulators

8088 MPH: we will break all your emulators

 
One of the items on the list of my desires after reading the first report from the party in 1991 was a visit to the European demopati and participation in competitions compo . I participated in NAID '96 and even took place there , but my dream was always to compete with the best of the best. I'm happy to announce that after six months of hard work with good friends and incredibly talented people, we succeeded. Our demo is ...
+ 0 -

Go: speed up the selection of large tables from MySQL

I've been using Go to write an ad network for almost a year now. The development I lead on the server Intel i7-770? 16Gb RAM, 256Gb SSD. And in the script that runs once a day, the task appeared to select all the impressions for the past day and to count on this basis statistics for the day at once on several objects (site, campaign, banner).
 
 
According to Go's idioms everything is quite trivial:
 
RawBytes which ensures that the bytes from the database driver will be transferred to the user without copying. What. We will try to extract Scan into the intermediate structure with the sql.RawBytes ...
+ 0 -

Guide to Assembler Go

Guide to Assembler Go  
 
Before implementing the implementation of runtime and learning the standard library, you need to master the abstract assembler Go. I hope this guide will help you quickly master the necessary knowledge.
 
"Pseudo-assembler"
 
Decomposition of a simple program
 
 
Let's analyze add
 
Analyzing the main
 
 
A couple of words about gorutins, stacks and partitions
 
 
Stacks
 
...
+ 0 -

Game Snake in 95 bytes

Game Snake in 95 bytes

 

History of the creation of


 
"Snake" (Python, Udav) as it is called among the people - one of the first games of the digital (computer) mid-1970s.
 
 
At that time, games were released on a separate slot machine, for example, known games such as "Space Invaders", "Pac-Man", "Arkanoid" and others. Usually, only one game was pre-installed on arcade machines of that time, and the machine itself was stylized for this game.
 
 
"Snake" has a simple gameplay in which the player controls a moving line depicting a snake. The player can change the direction of movement of the snake "turning" by 90 degrees...[/h]
+ 0 -

Development of games under NES on C. Chapter 24. Appendix 2 - work with banks of memory

The final part of the cycle. In this chapter, we'll discuss how to work with the MMC3 mapper on the examples
 
previous
 
Development of games under NES on C. Chapter 24. Appendix 2 - work with banks of memory
 
Source
 
Previously, we did not use memory bank switching, but now it's time to master the MMC3 mapper. Without a mapper, you can use 32 kilobytes of PRG ROM for the code and 8 kilobytes of CHR ROM for the graphics. Mapper allows to bypass this barrier.
http://kevtris.org/mappers/mmc3/ asserts that we have such options:
 
 
Up to 64K PRG, 64K CHR
 
Up to 512K PRG, 64K CHR
 
Up to 512K PRG, VRAM
 
Up to 512K PRG, 256K CHR
 
Up t...
+ 0 -

Developing games under the NES on C. Chapters 22-23. Appendix 1 - Mappers and Digital Sound

Here there will be information not included in the main loop, but too valuable to ignore.
 
previous next
 
Developing games under the NES on C. Chapters 22-23. Appendix 1 - Mappers and Digital Sound
 
Source
 
From our discussion, the topic of coprocessors - coprocessors in a cartridge almost completely fell out. If you need to make a game larger than 0x8000 bytes, then the standard capabilities of the console for this is not enough. Mapper allows you to switch memory banks in the game, and cc65 can work with it. The most popular mapper is MMC3. In addition to switching memory banks, it has a row counter.
http://www.cc65.org/mailarchive/2009-05/6581.html ...
+ 0 -

Developing games under NES on C. Chapters 17-21. Own game

In this part we will collect everything together and make a simple scrolling shooter on the space theme: the ship flies and shoots enemies
with lasers.  
previous following
 
Developing games under NES on C. Chapters 17-21. Own game
 
Source
 
Planning
one of the articles .
 
Background with stars [/b]
Vert_scroll2 = ((Vert_scroll & 0xF8) 2);
Sprite_Zero (); //wait for the collision of the zero sprite
PPU_ADDRESS = 0;
SCROLL = Vert_scroll;
SCROLL = 0;
PPU_ADDRESS = Vert_scroll2;

 
There were difficulties: in a few seconds everything was moving away. In the FCEUX debugger...
+ 0 -

Developing games under NES on C. Chapters 14-16. Working with sound

In this part, basic information about working with sound. It is very confusing and uses specific terminology, so it is not very clear to describe it clearly.
 
Developing games under NES on C. Chapters 14-16. Working with sound
 
Source
 
Getting started with
sound.
 
A review of the tools that the NES platform presents to us. However, further we will go to a higher level and will use the library Famitracker.
 
The easiest way to feel the sound capabilities of the console is with the help of demos Sound Test, developed by SnoBrow. It is not compatible with all emulators, but FCEUX is supported.
 
The Select button toggles ...
+ 0 -