Lawn Mower — licença ==================== Lawn Mower é um jogo homebrew para o NES (um jogo novo, feito por um desenvolvedor independente, não um lançamento comercial), de Shiru, feito para a NES Coding Competition 2011. Código, gráficos e música são do próprio Shiru, que colocou o jogo em domínio público: o manual diz "It is free of charge, released into Public Domain" e assina "PD 2011 Shiru". O que este site serve: o arquivo Lawn_Mower.nes do pacote oficial lawn_mower.zip, sem alterações, rodando no emulador jsnes. O site do autor (https://shiru.untergrund.net/) estava fora do ar em 2026-10-02; o zip foi baixado da captura que o Wayback Machine fez do próprio site do autor (https://web.archive.org/web/20241206185421id_/http://shiru.untergrund.net/files/nes/lawn_mower.zip), conferido pelo SHA-256 af7378b522a7d11efd0306aebf15c193a2de31f5a7b130919699d4f1e7219f70. O autor pede, sem exigir, uma doação a uma instituição de caridade pelo link "Donate" do site dele, para quem gostar do jogo. Página do autor: https://shiru.untergrund.net/software.shtml ------------------------------------------------------------------------------ manual.pdf (trechos em inglês: introdução e créditos) ------------------------------------------------------------------------------ PD 2011 Shiru Introduction The game is designed to use with Nintendo Entertainment System or Famicom game consoles, or with a software emulator of these consoles. To run the game on actual console you need a flash cartridge, such as PowerPak. The game is not licensed or endorsed by Nintendo company in any way. It is free of charge, released into Public Domain, and provided "as is", without warranty or responsibility of any kind. Credits Code, graphics, music: Shiru Testing: Alone Coder, B00daW, Pinball Wizzard, MrFTBN This game is free. However, if you like it and think you would pay for it, please consider to visit Donate link at http://shiru.untergrund.net and make a donation. Donations will be redirected to a charity, providing a little bit of help for those in need, and encourangement for the author to further work on projects like this. www.shiru.untergrund.net ------------------------------------------------------------------------------ notes.txt ------------------------------------------------------------------------------ Development notes After Lan Master was mostly finished and tested, there were still about three weeks before the NES Coding Competition 2011 deadline. I thought I may try to make an extra, very simple and small game - tools and code made for Lan Master allowed to speed up the process. I decided to make a more or less exact clone of certain version of classic lawn mower game I've seen on BK-0010 (made in 1986) and ZX Spectrum. The original game was single screen, with all the objects represented by 8x8 characters, and with character-based movements. There were just three levels of difficulty with increasing movement speed. Such a simple game easily could be done in very short time and fit into smallest ROM. However, thinking about it, different ideas arose, like '8x8 chars are difficult to see', 'larger chars means smaller levels', 'it is boring without music'. Then I aimed to a design similar to early NES arcades, but overdid this too. At some point I decided to go with 24K NROM, and not more, because the project was really bloated from the initial idea. Even having this limitation, the data just didn't fit into the ROM, so funny optimizations were used, like levels data in the CHR ROM, and shared instruments data for all the music. There are about 180 bytes of free room in the PRG ROM. Besides the presentation, there were changes in the gameplay, like speeding up, flowers and stones, fuel bonus only put on cut grass, etc. I think, all this adds more tactics in the game and makes the player fight not just with the timer or something, but mostly with his own accuracy and impatience. A NESASM bug finally was noticed by me in this project. It does not report ROM overflow in some cases, producing not working ROM without any warnings. If you move some data around, it starts to show an error. One major problem were very different palettes across the emulators. If one good palette is made for an emulator, it looks just bad in other emulators. It is not just shade of a colors, one color can vary from lime to clean yellow, for example. There are 4800+ lines of manually written assembly code in the project, including FamiTone, which was modified and fixed a bit in the process. The project took about three weeks of work, with week or more almost full time. I had a little time to test it properly, and few bugs including major one were fixed a day before the deadline. Luckily, I got help with testing on the actual NES (B00daW), because I have no PowerPak, and the test revealed really major problem with the scrolling, which is not happens in 7 different emulators. The problem was solved by altering design. The game does not work in Jnes (hangs after start) and in UberNES (black screen) by some reason. It was not fixed because the game works on actual console and other emulators. Software used: Graphics Gale - to sketch title screen and most of in-game graphics, it was converted and edited with NES Screen Tool afterwards Notepad++ - for all the code and text works NESASM v3.1 - to compile the code FamiTracker - to make all the music and sound effects FCEUX, Nintendulator, VirtuaNES (profiler mod) - to test everything, some others for compatibility tests Borland Turbo Explorer - to make level editor Inkscape, Blender, CutePDF Writer - to make manual and label