AtariSTknowhow

From syn2cat - HackerSpace.lu
(Difference between revisions)
Jump to: navigation, search
(Registrations)
(Workshop 3: the impossible demo: parallax distorter)
 
(16 intermediate revisions by 5 users not shown)
Line 6: Line 6:
 
'''Talk about this on the [[Talk:AtariSTknowhow|discussion section]] of this page'''
 
'''Talk about this on the [[Talk:AtariSTknowhow|discussion section]] of this page'''
  
For the moment chip tunes are not covered in all this. They will be used but not explained in detail how it works. You need to be a musician and programmer to dive into that. As that is mainly audio stuff the best place to do this will be a [[RadioShow]]
+
For the moment chip tunes are not covered in all this. They will be used but not explained in detail how it works. You need to be a musician and programmer to dive into that. As that is mainly audio stuff the best place to do this will be a radio show [[ChiptuneHistory]]
  
 
You don't need to follow all talks and workshops as some will be overlapping and repeats.
 
You don't need to follow all talks and workshops as some will be overlapping and repeats.
Line 13: Line 13:
  
 
=Registrations=
 
=Registrations=
please register on this page if you are interested in aything of this
+
please register on this page if you are interested in anything of this so you get emails for announcements
  
 
*[[User:slopjong]]
 
*[[User:slopjong]]
Line 20: Line 20:
 
*[[User:sid]]
 
*[[User:sid]]
 
*[[User:prometheus]]
 
*[[User:prometheus]]
 +
*[[User:Muling]]
 +
*[[User:The metalgamer]]
  
=Talk 1: Introduction=
+
=workshop prerequisites=
 +
(this section needs links to the different items, for now just use google and luck)
 +
 
 +
To fully get up to speed with the workshop you need a working ST or emulator. There are several emulators of various quality available. Best of course is to get your hands on a real ST.
 +
 
 +
Using the real hardware brings of course some logistics problems: those things run on RGB tv frequency, and that's quite difficult to get today's LCDs to understand. So you need desk space to set up a CRT and the ST with various cables.
 +
 
 +
Using emulators has limitations as the hardware tricks are not always well emulated. Best emulator is [http://leonard.oxg.free.fr/SainT/saint.html Saint]. Unfortunately only available on windows (no idea if it works with vmware fusion or wine). Another OK alternative is [http://steem.atari.st/index.htm Steem Engine] or [http://hatari.tuxfamily.org/ hatari]. For the emulator you also need a copy of the OS which I can give to you (hint, there's a working linux steem installation on the laptop in the chill).
 +
 
 +
And finally some software is needed. Real hardware likes floppies, the SD kind. HD do not really work well. The emulators use disk images which can be downloaded from many sites.
 +
 
 +
We will use one type of software: the assembler. There are 2 available. Devpac, a classic macro assembler. And Turboass, no macros but blazing fast (i.e. instant assembly).
 +
 
 +
 
 +
=[[Atari ST Knowhow Workshop 1|Workshop 1: Introduction]]=
 
* Introduction to the Atari ST
 
* Introduction to the Atari ST
 
** History
 
** History
Line 30: Line 46:
 
** cracks
 
** cracks
 
** demos
 
** demos
 +
* fist steps
 +
** start your ST (or emulator)
 +
** get programs and stuff
 +
** run software
 +
== Slides ==
 +
* [[Media:AtariSTworkshop1.pdf|pdf]]
 +
* [[Media:AtariSTworkshop1.odp|libreoffice presentation]]
  
=Talk 2: ST Hacking=
+
=[[Atari ST Knowhow Workshop 2|Workshop 2: ST Hacking]]=
* Hacking the Atari ST
+
Hacking the Atari ST
** hardware modifications
+
* hardware modifications
** software modifications
+
** add ram
 +
** add realtime clock
 +
** add screen size
 
* overcoming hardware limitations with software
 
* overcoming hardware limitations with software
 
** scrolling
 
** scrolling
 +
** distorter
 
** digisound
 
** digisound
 
** sprites
 
** sprites
Line 42: Line 68:
 
** higher resolution
 
** higher resolution
 
** scrolling way too much
 
** scrolling way too much
 +
** lines, faces and 3D
  
=Talk 3: putting it all together=
+
<gallery>
* The impossible demo. People always thought that on the ST
+
File:AtariSTkh_Hacking_0.JPG|gunstick explaining
** you can't do 500 colors at once
+
File:AtariSTkh_Hacking_1.JPG|Presentation to illustrate
** you can't play digital samples
+
File:AtariSTkh_Hacking_2.JPG|Looking and thinking about the wonders of Atari
** the video signal has always a border around
+
</gallery>
** it's impossible to move the whole screen contents
+
== Slides ==
** bitwise shifting is taking too much CPU
+
* [[Media:AtariSTworkshop2.pdf|pdf]]
** playfields are an Amiga thing
+
* [[Media:AtariSTworkshop2.odp|libreoffice presentation]]
** there are no sprites on the ST (not shown in this talk)
+
 
 +
=[[Atari ST Knowhow Workshop 3|Workshop 3: the impossible demo: parallax distorter]]=
 +
* The impossible demo: [http://dhs.nu/video.php?ID=456 parallax distorter]. People always thought that on the ST
 +
** you can't do 500 colors at once -> colorshok demo
 +
** you can't play digital samples -> digit demo
 +
** the video signal has always a border around -> overscan demo
 +
** it's impossible to move the whole screen contents -> syncscroll demo
 +
** bitwise shifting is impossible -> distorter
 +
** playfields are an Amiga thing -> playfield demo
 +
** there are no sprites on the ST -> big sprite demo
 
* but of course this demo shows all this, at the same time (which is also impossible)
 
* but of course this demo shows all this, at the same time (which is also impossible)
 +
** the algorithmic theory behind it
 
** how to integrate all the effects into one
 
** how to integrate all the effects into one
 
** showing off devpac and turboass
 
** showing off devpac and turboass
 
** visually inspecting synchon code
 
** visually inspecting synchon code
 +
== Slides ==
 +
* [[Media:AtariSTworkshop3.odp|libreoffice presentation]] (no pdf because there's a lot of animation)
  
=Workshop 1: assembler and hardware=
+
=[[Atari_ST_Knowhow_Workshop_4|Workshop 4: assembler and hardware]]=
* programming the 68000 in assembler (using turboass)
+
*   programming the 68000 in assembler (using turboass or devpac)
* specificity of the Atari ST hardware
+
** instructions
* smooth scrolling howto
+
** the ULM intro code to get quickly started
* color cycling effects
+
specificity of the Atari ST hardware (workshop 1, from the programmer's view)
* tricking the ST hardware in other ways
+
** where's my screen momory
 +
** memory mapped hardware
 +
*   smooth scrolling howto (recall workshop 2?)
 +
** word and byte scrollers
 +
** bit scroller
 +
** be creative
 +
*   color cycling effects (workshop 2 again)
 +
** need some drawing skills
 +
** more than 16 colors
 +
*   tricking the ST hardware in other ways (as seen in workshop 3)
 +
** the mystery of digital sound output
 +
** other trickery by writing directly to hardware
  
=Workshop 2: algorythm optimizations and beyond=
+
=[[Atari_ST_Knowhow_Workshop_5|Workshop 5: type your own code]]=
 +
* design your own demo: a scroller
 +
* can it be done?
 +
* program it!
 +
 
 +
 
 +
=Workshop 6: algorythm optimizations and beyond=
 
* algorithms in theory
 
* algorithms in theory
 
* and in practice
 
* and in practice
Line 71: Line 127:
 
* the CLF technique (i.e. the impossible part)
 
* the CLF technique (i.e. the impossible part)
  
=Workshop 3: synchron programming in practice=
+
=Workshop 7: synchron programming in practice=
 
* diving into the internals of the impossible demo
 
* diving into the internals of the impossible demo
 
* source code
 
* source code
 
* change parameters and watch results
 
* change parameters and watch results
 
=Workshop 4: type your own code=
 
* design your own demo
 
* can it be done?
 
* program it
 

Latest revision as of 06:00, 22 April 2014

Contents

[edit] About

This series of talks and workshops will introduce to the world of demo programming on the Atari ST platform.

Your host: User:Gunstick

Talk about this on the discussion section of this page

For the moment chip tunes are not covered in all this. They will be used but not explained in detail how it works. You need to be a musician and programmer to dive into that. As that is mainly audio stuff the best place to do this will be a radio show ChiptuneHistory

You don't need to follow all talks and workshops as some will be overlapping and repeats.

The presentation method will be using the Gunstick-has-all-in-his-head technique. The workshops will be using real Atari hardware and emulators.

[edit] Registrations

please register on this page if you are interested in anything of this so you get emails for announcements

[edit] workshop prerequisites

(this section needs links to the different items, for now just use google and luck)

To fully get up to speed with the workshop you need a working ST or emulator. There are several emulators of various quality available. Best of course is to get your hands on a real ST.

Using the real hardware brings of course some logistics problems: those things run on RGB tv frequency, and that's quite difficult to get today's LCDs to understand. So you need desk space to set up a CRT and the ST with various cables.

Using emulators has limitations as the hardware tricks are not always well emulated. Best emulator is Saint. Unfortunately only available on windows (no idea if it works with vmware fusion or wine). Another OK alternative is Steem Engine or hatari. For the emulator you also need a copy of the OS which I can give to you (hint, there's a working linux steem installation on the laptop in the chill).

And finally some software is needed. Real hardware likes floppies, the SD kind. HD do not really work well. The emulators use disk images which can be downloaded from many sites.

We will use one type of software: the assembler. There are 2 available. Devpac, a classic macro assembler. And Turboass, no macros but blazing fast (i.e. instant assembly).


[edit] Workshop 1: Introduction

  • Introduction to the Atari ST
    • History
    • presentation of the hardware
    • the OS and available software
  • evolution of software
    • games
    • cracks
    • demos
  • fist steps
    • start your ST (or emulator)
    • get programs and stuff
    • run software

[edit] Slides

[edit] Workshop 2: ST Hacking

Hacking the Atari ST

  • hardware modifications
    • add ram
    • add realtime clock
    • add screen size
  • overcoming hardware limitations with software
    • scrolling
    • distorter
    • digisound
    • sprites
    • colors
    • higher resolution
    • scrolling way too much
    • lines, faces and 3D

[edit] Slides

[edit] Workshop 3: the impossible demo: parallax distorter

  • The impossible demo: parallax distorter. People always thought that on the ST
    • you can't do 500 colors at once -> colorshok demo
    • you can't play digital samples -> digit demo
    • the video signal has always a border around -> overscan demo
    • it's impossible to move the whole screen contents -> syncscroll demo
    • bitwise shifting is impossible -> distorter
    • playfields are an Amiga thing -> playfield demo
    • there are no sprites on the ST -> big sprite demo
  • but of course this demo shows all this, at the same time (which is also impossible)
    • the algorithmic theory behind it
    • how to integrate all the effects into one
    • showing off devpac and turboass
    • visually inspecting synchon code

[edit] Slides

[edit] Workshop 4: assembler and hardware

  • programming the 68000 in assembler (using turboass or devpac)
    • instructions
    • the ULM intro code to get quickly started
  • specificity of the Atari ST hardware (workshop 1, from the programmer's view)
    • where's my screen momory
    • memory mapped hardware
  • smooth scrolling howto (recall workshop 2?)
    • word and byte scrollers
    • bit scroller
    • be creative
  • color cycling effects (workshop 2 again)
    • need some drawing skills
    • more than 16 colors
  • tricking the ST hardware in other ways (as seen in workshop 3)
    • the mystery of digital sound output
    • other trickery by writing directly to hardware

[edit] Workshop 5: type your own code

  • design your own demo: a scroller
  • can it be done?
  • program it!


[edit] Workshop 6: algorythm optimizations and beyond

  • algorithms in theory
  • and in practice
  • and even faster
  • faster than experts think
  • the CLF technique (i.e. the impossible part)

[edit] Workshop 7: synchron programming in practice

  • diving into the internals of the impossible demo
  • source code
  • change parameters and watch results
Personal tools
Namespaces

Variants
Actions
Navigation
syn2cat
Hackerspace
Activities
Initiatives
Community
Tools
Tools