0 00:00:00,000 --> 00:00:30,000 Dear viewer, these subtitles were generated by a machine via the service Trint and therefore are (very) buggy. If you are capable, please help us to create good quality subtitles: https://c3subtitles.de/talk/503 Thanks! 1 00:00:09,750 --> 00:00:10,750 Amiga. 2 00:00:11,610 --> 00:00:14,099 I think for a lot of you, 3 00:00:14,100 --> 00:00:16,709 it is perhaps like for me, 4 00:00:16,710 --> 00:00:19,319 a reminder of the youth, 5 00:00:19,320 --> 00:00:21,449 perhaps your first computer even 6 00:00:21,450 --> 00:00:22,709 was one. 7 00:00:22,710 --> 00:00:24,839 OK, some of you may be 8 00:00:24,840 --> 00:00:26,339 a little too young. 9 00:00:26,340 --> 00:00:28,559 Some of you perhaps have grown 10 00:00:28,560 --> 00:00:30,329 so young when they had an Amiga. 11 00:00:31,710 --> 00:00:34,079 That's the nice thing about Congress. 12 00:00:34,080 --> 00:00:35,310 It's such a nice mixture. 13 00:00:36,360 --> 00:00:38,639 So today, all of us 14 00:00:38,640 --> 00:00:41,069 get a nice introduction and 15 00:00:41,070 --> 00:00:43,229 how the hardware design of our Amiga 16 00:00:43,230 --> 00:00:45,839 works and how to program it. 17 00:00:45,840 --> 00:00:47,909 And I will give you one very, very 18 00:00:47,910 --> 00:00:49,979 small spoiler. 19 00:00:49,980 --> 00:00:51,600 You didn't program it was Java. 20 00:00:54,430 --> 00:00:57,639 So please welcome 21 00:00:57,640 --> 00:00:58,640 Laura. 22 00:00:59,310 --> 00:01:00,869 Was a big round of applause. 23 00:01:08,400 --> 00:01:10,589 OK, welcome, everybody, from my 24 00:01:10,590 --> 00:01:12,209 side. Thank you for your nice 25 00:01:12,210 --> 00:01:14,399 introduction. Welcome to my Wintech talk 26 00:01:14,400 --> 00:01:16,559 here. So we are actually going to talk 27 00:01:16,560 --> 00:01:17,729 about something that's happened to 28 00:01:17,730 --> 00:01:20,609 roughly about 30 years ago. 29 00:01:20,610 --> 00:01:22,679 So it was really hard work for me to 30 00:01:22,680 --> 00:01:24,839 prepare that, because at once 31 00:01:24,840 --> 00:01:27,479 upon a time, let's say in 32 00:01:27,480 --> 00:01:29,639 the middle of the 80s, I knew 33 00:01:29,640 --> 00:01:31,979 a lot about Amiga and Amiga programing 34 00:01:31,980 --> 00:01:34,259 and stuff like that, but 35 00:01:34,260 --> 00:01:36,719 I forgot more or less everything. 36 00:01:38,800 --> 00:01:40,889 Well, five 37 00:01:40,890 --> 00:01:42,959 years ago, there was a talk. 38 00:01:42,960 --> 00:01:45,179 I don't know if it was exactly 39 00:01:45,180 --> 00:01:46,889 five years, but a few years ago there was 40 00:01:46,890 --> 00:01:48,959 a talk about the 41 00:01:48,960 --> 00:01:50,039 64 computer. 42 00:01:50,040 --> 00:01:52,019 So I think everybody knows that in here. 43 00:01:55,020 --> 00:01:57,569 It was a great talk, and 44 00:01:57,570 --> 00:01:59,729 that was the inspiration for me 45 00:01:59,730 --> 00:02:01,679 to give a talk about the Amiga computer, 46 00:02:01,680 --> 00:02:03,839 but it took some time to, 47 00:02:03,840 --> 00:02:05,969 well, launch this well, 48 00:02:05,970 --> 00:02:08,339 OK, it started 49 00:02:08,340 --> 00:02:09,339 like this. 50 00:02:09,340 --> 00:02:11,549 OK, so it's pretty full in 51 00:02:11,550 --> 00:02:13,619 here. So as I said 30 years 52 00:02:13,620 --> 00:02:16,169 ago, I think at least 50 percent 53 00:02:16,170 --> 00:02:18,299 in here are here because you had 54 00:02:18,300 --> 00:02:19,469 an ambiguous spell. 55 00:02:19,470 --> 00:02:20,609 So please raise your hands. 56 00:02:20,610 --> 00:02:22,469 Who had an arm on your computer? 57 00:02:22,470 --> 00:02:24,539 OK, that's at least 50 58 00:02:24,540 --> 00:02:25,919 percent. 59 00:02:25,920 --> 00:02:28,139 OK, under 50 percent in here 60 00:02:28,140 --> 00:02:30,119 are here to learn something about the 61 00:02:30,120 --> 00:02:32,429 history. So probably you even 62 00:02:32,430 --> 00:02:34,049 weren't born at that time. 63 00:02:34,050 --> 00:02:36,029 So it started out. 64 00:02:36,030 --> 00:02:37,769 It started on my attic. 65 00:02:37,770 --> 00:02:38,770 I 66 00:02:39,840 --> 00:02:41,009 well, was opening. 67 00:02:41,010 --> 00:02:43,019 You see, there's a lot of dust and 68 00:02:43,020 --> 00:02:45,059 looking for if there are some hardware 69 00:02:45,060 --> 00:02:47,369 and software and so on and 70 00:02:47,370 --> 00:02:50,459 try to find something about the computer. 71 00:02:50,460 --> 00:02:52,769 Well, and I found a lot, many thanks 72 00:02:52,770 --> 00:02:55,169 to my brothers who delivered 73 00:02:55,170 --> 00:02:56,579 some computers to me. 74 00:02:56,580 --> 00:02:58,979 So actually one Amiga five hundred and 75 00:02:58,980 --> 00:03:01,229 1000 because my own computers 76 00:03:01,230 --> 00:03:02,409 didn't work anymore. 77 00:03:02,410 --> 00:03:04,769 I have one also, but it doesn't work. 78 00:03:04,770 --> 00:03:07,059 I was unable to well launch it. 79 00:03:07,060 --> 00:03:09,179 OK, before we dig into details, 80 00:03:09,180 --> 00:03:11,519 I try to show something 81 00:03:11,520 --> 00:03:14,549 to you. So in real 82 00:03:14,550 --> 00:03:17,219 I have here the famous Amiga emulator. 83 00:03:18,330 --> 00:03:20,519 Um, you know, it's, 84 00:03:20,520 --> 00:03:23,179 uh, it's called. 85 00:03:23,180 --> 00:03:26,419 You a e so 86 00:03:26,420 --> 00:03:28,279 some people say it's a Unix Amiga 87 00:03:28,280 --> 00:03:30,379 emulator, but actually originally it 88 00:03:30,380 --> 00:03:33,389 was called the unusable Amiga immolating. 89 00:03:33,390 --> 00:03:35,689 OK, why was it called unusable? 90 00:03:35,690 --> 00:03:37,849 Because the hardware was so 91 00:03:37,850 --> 00:03:40,489 powerful that in the middle of the 90s 92 00:03:40,490 --> 00:03:42,679 when this emulator was programed, it was 93 00:03:42,680 --> 00:03:45,169 unable to emulate anything in 94 00:03:45,170 --> 00:03:46,999 accurate time, let's say an accurate 95 00:03:47,000 --> 00:03:48,949 time. It worked, of course, but very 96 00:03:48,950 --> 00:03:50,839 slow. And it even doesn't work on my 97 00:03:50,840 --> 00:03:52,489 computer very well. 98 00:03:52,490 --> 00:03:54,829 But OK, let's see what happens. 99 00:03:54,830 --> 00:03:56,749 So there is a piece of software that I 100 00:03:56,750 --> 00:03:58,669 wrote somewhere around 90. 101 00:04:00,380 --> 00:04:02,179 It takes a long time to load because it's 102 00:04:02,180 --> 00:04:04,009 a disk drive. It's not real, it's an 103 00:04:04,010 --> 00:04:05,179 Amelita distress. 104 00:04:05,180 --> 00:04:06,180 Everybody knows that. 105 00:04:11,110 --> 00:04:13,779 OK, that's typical Amiga style, 106 00:04:13,780 --> 00:04:15,369 what what can we see here? 107 00:04:15,370 --> 00:04:18,099 We see here in the middle there is a 108 00:04:18,100 --> 00:04:20,588 you see picture which is somehow 109 00:04:20,589 --> 00:04:23,439 moving. Then we have the starfield, 110 00:04:23,440 --> 00:04:25,749 the moving starfield background here. 111 00:04:25,750 --> 00:04:27,909 Every let's say our software had 112 00:04:27,910 --> 00:04:29,319 something like that. 113 00:04:29,320 --> 00:04:31,419 Then there is a Sprite coming 114 00:04:31,420 --> 00:04:32,420 in here. 115 00:04:33,620 --> 00:04:36,319 And there is a strong line, of course, 116 00:04:36,320 --> 00:04:38,689 it moves OK, on the original 117 00:04:38,690 --> 00:04:40,159 model, it's really smooth. 118 00:04:40,160 --> 00:04:41,969 It's not perfectly smooth in here, but 119 00:04:41,970 --> 00:04:43,879 but that's because of the computer. 120 00:04:43,880 --> 00:04:45,259 And then we'll see. There is a second 121 00:04:45,260 --> 00:04:47,240 scrolling line coming up here. 122 00:04:53,140 --> 00:04:54,140 Hopefully. 123 00:04:55,810 --> 00:04:58,689 I take some, but their sound also, 124 00:04:58,690 --> 00:05:00,190 but actually it doesn't matter. 125 00:05:02,090 --> 00:05:04,469 We can't hear. Yes, I'm not connected, 126 00:05:04,470 --> 00:05:05,689 just believe in their sound. 127 00:05:09,790 --> 00:05:11,649 OK, so you see there is a second 128 00:05:11,650 --> 00:05:14,739 scrolling line and it makes it weird, 129 00:05:14,740 --> 00:05:17,079 it's not just straight, it's it's a sign 130 00:05:17,080 --> 00:05:19,239 or something like a sign moves very 131 00:05:19,240 --> 00:05:20,439 smoothly here. 132 00:05:20,440 --> 00:05:22,570 OK, so now I stop this. 133 00:05:34,520 --> 00:05:35,520 Remove that any. 134 00:05:37,500 --> 00:05:39,330 OK, so go here. 135 00:05:42,130 --> 00:05:43,130 OK. 136 00:05:43,570 --> 00:05:45,669 So let's continue with this 137 00:05:45,670 --> 00:05:47,859 this intro, this intro 138 00:05:47,860 --> 00:05:49,929 that you've just seen 139 00:05:49,930 --> 00:05:53,469 that I have written that on myself 140 00:05:53,470 --> 00:05:56,049 about 1990, 1991, 141 00:05:56,050 --> 00:05:58,239 I was a member of a 142 00:05:58,240 --> 00:06:00,639 Cracker and Spreyton group, Bad Boy, 143 00:06:00,640 --> 00:06:02,859 as probably some of you at the time 144 00:06:02,860 --> 00:06:04,929 then. And one important 145 00:06:04,930 --> 00:06:07,359 thing that to demonstrate your programing 146 00:06:07,360 --> 00:06:09,459 power was that all those Broeder groups 147 00:06:09,460 --> 00:06:11,649 and KRACKER groups programed intros 148 00:06:11,650 --> 00:06:14,109 like this where everything was moving and 149 00:06:14,110 --> 00:06:16,269 and colored and fancy like 150 00:06:16,270 --> 00:06:17,949 that to demonstrate their programing 151 00:06:17,950 --> 00:06:20,179 power. So it was usual at the time that. 152 00:06:20,180 --> 00:06:22,239 OK, so let's have a look at 153 00:06:22,240 --> 00:06:24,429 the history of the Yamila computer. 154 00:06:24,430 --> 00:06:26,829 So at 1984, that was the first 155 00:06:26,830 --> 00:06:28,119 chaos communication Congress. 156 00:06:28,120 --> 00:06:29,739 So excellent. Doesn't have to do anything 157 00:06:29,740 --> 00:06:30,939 with their mere computer. 158 00:06:30,940 --> 00:06:33,279 But it's just to show 159 00:06:33,280 --> 00:06:35,409 you let's see what happened during 160 00:06:35,410 --> 00:06:36,649 this century. 161 00:06:36,650 --> 00:06:39,189 The first Amiga actually appeared 162 00:06:39,190 --> 00:06:40,359 in nineteen eighty five. 163 00:06:40,360 --> 00:06:42,789 It was the 1000 model. 164 00:06:42,790 --> 00:06:44,859 And then they had to follow up 165 00:06:44,860 --> 00:06:47,469 models. It was the 500 and the 2000 166 00:06:47,470 --> 00:06:50,019 model, which were more or less the same 167 00:06:50,020 --> 00:06:52,149 actually. So the one had more 168 00:06:52,150 --> 00:06:54,279 capabilities for expansion and slots 169 00:06:54,280 --> 00:06:56,349 and so on. But the basic 170 00:06:56,350 --> 00:06:58,239 hardware was actually the same. 171 00:06:58,240 --> 00:07:00,459 And many 172 00:07:00,460 --> 00:07:02,889 years later, so 1990 173 00:07:02,890 --> 00:07:05,139 appeared the Amiga three thousand model, 174 00:07:05,140 --> 00:07:07,479 and then later they came up with that's 175 00:07:07,480 --> 00:07:09,519 not completely some other models like the 176 00:07:09,520 --> 00:07:11,719 twelve hundred, which I think is your 177 00:07:11,720 --> 00:07:14,019 here. Yeah. OK, so twelve hundred 178 00:07:14,020 --> 00:07:16,359 it appeared in 1992 and the 179 00:07:16,360 --> 00:07:18,339 Amiga 4000 model. 180 00:07:18,340 --> 00:07:19,899 OK, what happened then. 181 00:07:19,900 --> 00:07:22,269 You know all those two computer games 182 00:07:22,270 --> 00:07:23,270 here. 183 00:07:24,670 --> 00:07:26,769 I mentioned them because those two 184 00:07:26,770 --> 00:07:28,809 computer games were the first computer 185 00:07:28,810 --> 00:07:31,869 games in my opinion, 186 00:07:31,870 --> 00:07:33,999 which ruled the market which were on 187 00:07:34,000 --> 00:07:36,579 the IBM compatible market, 188 00:07:36,580 --> 00:07:38,109 the first computer games that were 189 00:07:38,110 --> 00:07:40,209 comparable in power to the 190 00:07:40,210 --> 00:07:43,119 media computer Amiga computer games. 191 00:07:43,120 --> 00:07:44,799 Well, OK, what happened then. 192 00:07:44,800 --> 00:07:47,319 Nineteen ninety four bankruptcy of the 193 00:07:47,320 --> 00:07:48,320 Commodore, a company. 194 00:07:49,470 --> 00:07:52,389 Um, so actually 195 00:07:52,390 --> 00:07:54,289 we don't really know. 196 00:07:54,290 --> 00:07:56,139 Yes, we know officially. 197 00:07:56,140 --> 00:07:58,209 So the reason was that they 198 00:07:58,210 --> 00:08:00,609 did a huge investment 199 00:08:00,610 --> 00:08:02,829 in further development of 200 00:08:02,830 --> 00:08:04,689 computer hardware, so specifically the 201 00:08:04,690 --> 00:08:06,729 graphics hardware and so on. 202 00:08:06,730 --> 00:08:09,159 But what they did not see is 203 00:08:09,160 --> 00:08:11,229 that other vendors didn't 204 00:08:11,230 --> 00:08:12,909 sleep in at time. 205 00:08:12,910 --> 00:08:15,279 So that's from nineteen eighty 206 00:08:15,280 --> 00:08:17,139 five to 1994. 207 00:08:17,140 --> 00:08:18,999 It's nine years. So some more or 10 208 00:08:19,000 --> 00:08:21,249 years. And the other vendors didn't 209 00:08:21,250 --> 00:08:23,439 sleep. They created cool hardware 210 00:08:23,440 --> 00:08:25,839 as well and well. 211 00:08:25,840 --> 00:08:28,239 So in my opinion it was too 212 00:08:28,240 --> 00:08:31,449 late. And additionally 213 00:08:31,450 --> 00:08:33,849 they had two extremely successful models 214 00:08:33,850 --> 00:08:35,199 during this century. 215 00:08:35,200 --> 00:08:37,639 So there was a C 64 everybody knows 216 00:08:37,640 --> 00:08:39,579 was one of the most successful models 217 00:08:39,580 --> 00:08:42,249 ever. And then they had the Amiga 500, 218 00:08:42,250 --> 00:08:44,379 which was so and the other models. 219 00:08:44,380 --> 00:08:46,719 But if 500 sold, sold most 220 00:08:46,720 --> 00:08:49,189 and then well, so they 221 00:08:49,190 --> 00:08:51,649 they hadn't to do any marketing anything. 222 00:08:51,650 --> 00:08:53,589 It was just successful because of the 223 00:08:53,590 --> 00:08:54,969 model spec rate. 224 00:08:54,970 --> 00:08:57,159 And that's my opinion, the reason 225 00:08:57,160 --> 00:08:59,349 why they simply died. 226 00:08:59,350 --> 00:09:01,509 OK, but the Amiga didn't die. 227 00:09:01,510 --> 00:09:02,949 There is further history. 228 00:09:02,950 --> 00:09:04,719 It's not complete here because I'd like 229 00:09:04,720 --> 00:09:06,849 to talk about the old the original models 230 00:09:06,850 --> 00:09:09,099 here. So there is 231 00:09:09,100 --> 00:09:11,439 the Amiga one, which is PowerPC based 232 00:09:11,440 --> 00:09:13,569 and it has the Armijo is for 233 00:09:13,570 --> 00:09:15,879 version of your operating system, version 234 00:09:15,880 --> 00:09:18,189 four and was further develop as some 235 00:09:18,190 --> 00:09:18,649 company. 236 00:09:18,650 --> 00:09:21,189 So here I write Hyperion Entertainment, 237 00:09:21,190 --> 00:09:23,559 but there were several companies 238 00:09:23,560 --> 00:09:25,779 involved and the license was sold 239 00:09:25,780 --> 00:09:27,609 from one to the next company and so on. 240 00:09:27,610 --> 00:09:29,859 OK, however, so it's still 241 00:09:29,860 --> 00:09:31,149 alive. 242 00:09:31,150 --> 00:09:33,009 The last version of the year four was 243 00:09:33,010 --> 00:09:35,500 released, I think, in 2014. 244 00:09:37,130 --> 00:09:39,769 OK, here's the 245 00:09:39,770 --> 00:09:42,109 primary models, what we have here, 246 00:09:42,110 --> 00:09:43,699 so that's the first one and see a meager 247 00:09:43,700 --> 00:09:44,700 1000, 248 00:09:45,830 --> 00:09:47,989 it's a desktop model with 249 00:09:47,990 --> 00:09:50,119 a keyboard. Here we have the typical 250 00:09:50,120 --> 00:09:52,189 small Amiga 500, all in one 251 00:09:52,190 --> 00:09:54,409 package. So keyboard inside, 252 00:09:54,410 --> 00:09:56,669 disk drive inside the mouse. 253 00:09:56,670 --> 00:09:58,819 That's an external disk drive as 254 00:09:58,820 --> 00:10:00,979 well here. And this is the 255 00:10:00,980 --> 00:10:01,980 larger 256 00:10:03,050 --> 00:10:04,379 Amiga 2000 model. 257 00:10:04,380 --> 00:10:05,989 So from the hardware base, it's actually 258 00:10:05,990 --> 00:10:08,029 the same as the 500. 259 00:10:08,030 --> 00:10:10,579 And but it came with you, the 260 00:10:10,580 --> 00:10:12,979 second slot for Distri Fear, and even 261 00:10:12,980 --> 00:10:15,529 you could build in hardware and several 262 00:10:15,530 --> 00:10:16,530 other 263 00:10:17,840 --> 00:10:19,849 additional hardware extensions. 264 00:10:22,310 --> 00:10:24,529 OK, let's talk about competitors, 265 00:10:24,530 --> 00:10:26,839 so Amiga was not alone in the market 266 00:10:26,840 --> 00:10:28,729 with some other models, of course, that's 267 00:10:28,730 --> 00:10:30,619 not a complete list, but that's what I 268 00:10:30,620 --> 00:10:32,719 think it's important to mention. 269 00:10:32,720 --> 00:10:35,119 So is a terrorist family. 270 00:10:35,120 --> 00:10:36,259 So it's not just one computer. 271 00:10:36,260 --> 00:10:37,639 It's a family of computers. 272 00:10:37,640 --> 00:10:39,049 They have the same CPUSA. 273 00:10:39,050 --> 00:10:41,149 It's a six six eight K 274 00:10:41,150 --> 00:10:43,369 Motorola CPU as it was used in Amiga 275 00:10:43,370 --> 00:10:45,559 500 computer on the computer. 276 00:10:45,560 --> 00:10:48,079 It was released in 1985 277 00:10:48,080 --> 00:10:49,039 as well. 278 00:10:49,040 --> 00:10:51,779 Then we have the ACORN and Tomatis. 279 00:10:51,780 --> 00:10:53,869 It was also a pretty 280 00:10:53,870 --> 00:10:56,689 powerful computer and 281 00:10:56,690 --> 00:10:59,129 it had the ARM version to 282 00:10:59,130 --> 00:11:01,579 C.P.U. So everybody knows the ARM C.P.U 283 00:11:01,580 --> 00:11:03,109 today. It's still here. 284 00:11:03,110 --> 00:11:04,609 It's a risk type. 285 00:11:04,610 --> 00:11:06,979 It was released in 1987. 286 00:11:06,980 --> 00:11:08,149 Then we had Apple. 287 00:11:08,150 --> 00:11:10,609 Apple had a lot of different models, 288 00:11:10,610 --> 00:11:12,889 one which I consider as comparable 289 00:11:12,890 --> 00:11:15,409 or let's say competitor is the Macintosh 290 00:11:15,410 --> 00:11:16,410 series. 291 00:11:17,000 --> 00:11:18,949 They were built with six eight K 292 00:11:18,950 --> 00:11:21,079 processors well, and was 293 00:11:21,080 --> 00:11:22,879 released in nineteen eighty five. 294 00:11:22,880 --> 00:11:25,249 They were not as successful 295 00:11:25,250 --> 00:11:27,679 as the other computers because they were, 296 00:11:27,680 --> 00:11:30,109 as Apple is today, unbelievably 297 00:11:30,110 --> 00:11:31,099 expensive. 298 00:11:31,100 --> 00:11:32,389 OK, unbelievable. 299 00:11:32,390 --> 00:11:34,579 So they they cost three 300 00:11:34,580 --> 00:11:36,769 times what the other computers cost 301 00:11:36,770 --> 00:11:37,849 at that time. 302 00:11:37,850 --> 00:11:39,529 And then we have the install base and 303 00:11:39,530 --> 00:11:41,629 also the so-called IBM PC 304 00:11:41,630 --> 00:11:43,309 compatible. 305 00:11:43,310 --> 00:11:46,009 There were, you know, the eighty 306 00:11:46,010 --> 00:11:47,989 and 80, 86 and 286. 307 00:11:47,990 --> 00:11:49,609 I don't mention them here. 308 00:11:49,610 --> 00:11:51,590 So I start with the 386 309 00:11:53,030 --> 00:11:55,219 type a three to six processor type models 310 00:11:55,220 --> 00:11:57,529 because they were powerful enough 311 00:11:57,530 --> 00:11:59,779 because the microprocessor is 312 00:11:59,780 --> 00:12:01,609 very powerful compared with, say, six 313 00:12:01,610 --> 00:12:03,739 eight K processor model. 314 00:12:03,740 --> 00:12:06,019 But the rest of the design. 315 00:12:06,020 --> 00:12:07,969 So everything else of the design is 316 00:12:07,970 --> 00:12:09,199 pretty straightforward. 317 00:12:09,200 --> 00:12:11,809 So there is a computer, is a bus and some 318 00:12:11,810 --> 00:12:14,059 some peripheral devices attached 319 00:12:14,060 --> 00:12:16,339 around. But no, let's say no 320 00:12:16,340 --> 00:12:18,469 special stuff like we have seen 321 00:12:18,470 --> 00:12:20,209 in those other models here. 322 00:12:20,210 --> 00:12:22,429 Just to give you an outline 323 00:12:22,430 --> 00:12:24,649 about what also happened in this 324 00:12:24,650 --> 00:12:26,749 century so that we a car 325 00:12:26,750 --> 00:12:28,489 to the media graphics area appeared in 326 00:12:28,490 --> 00:12:30,439 1987. 327 00:12:30,440 --> 00:12:32,509 We had the always two operating 328 00:12:32,510 --> 00:12:35,059 system, which was also multitasking 329 00:12:35,060 --> 00:12:37,369 operating system, which was, 330 00:12:37,370 --> 00:12:39,709 let's say, comparable to the comparable 331 00:12:39,710 --> 00:12:41,809 to the Amiga operating system, which is 332 00:12:41,810 --> 00:12:44,139 in multitasking operating system as well. 333 00:12:44,140 --> 00:12:46,279 But we have several Unix. 334 00:12:46,280 --> 00:12:48,379 But Unix I do 335 00:12:48,380 --> 00:12:50,809 not list Unix here because Unix typically 336 00:12:50,810 --> 00:12:52,489 was run on the mainframe and mainframe 337 00:12:52,490 --> 00:12:54,619 was not something that somebody could 338 00:12:54,620 --> 00:12:56,279 afford for buying at home. 339 00:12:56,280 --> 00:12:58,129 OK, so this is about personal computers 340 00:12:58,130 --> 00:13:00,499 that people can could buy 341 00:13:00,500 --> 00:13:02,239 for at home. 342 00:13:02,240 --> 00:13:04,609 We have the Windows version three and 343 00:13:04,610 --> 00:13:06,409 nineteen ninety. It was the first version 344 00:13:06,410 --> 00:13:08,359 which was could be considered as a real 345 00:13:08,360 --> 00:13:09,589 multitasking system. 346 00:13:09,590 --> 00:13:11,749 So to the version two and one 347 00:13:11,750 --> 00:13:14,089 was just, well, something suspending 348 00:13:14,090 --> 00:13:16,429 tossed in the background and well 349 00:13:16,430 --> 00:13:18,079 to mention Linux, Linux, the first 350 00:13:18,080 --> 00:13:20,809 release more or less appeared in 1991. 351 00:13:20,810 --> 00:13:22,219 So we had before everything. 352 00:13:26,950 --> 00:13:29,259 Yes, OS version, so operating 353 00:13:29,260 --> 00:13:30,759 system versions of a new computer, the 354 00:13:30,760 --> 00:13:33,069 first one was the 355 00:13:33,070 --> 00:13:35,349 one that acts which 356 00:13:35,350 --> 00:13:37,299 were released with the Amiga 1000 357 00:13:37,300 --> 00:13:39,189 different models of the 500 and the two 358 00:13:39,190 --> 00:13:41,289 thousand or so original versions 359 00:13:42,340 --> 00:13:43,569 on the 1000. 360 00:13:43,570 --> 00:13:45,309 You had to boot them from disk on the 361 00:13:45,310 --> 00:13:46,419 other models you could 362 00:13:48,310 --> 00:13:50,919 they were built in on Iram, 363 00:13:50,920 --> 00:13:53,049 on the rom chip. So you just switched on 364 00:13:53,050 --> 00:13:54,050 and was here. 365 00:13:54,790 --> 00:13:57,249 Then we had to version two, 366 00:13:57,250 --> 00:13:59,769 which appeared about 1990, 367 00:13:59,770 --> 00:14:02,079 which was available, available actually 368 00:14:02,080 --> 00:14:04,179 on the Amiga 3000, but 369 00:14:04,180 --> 00:14:05,739 it was backwards compatible. 370 00:14:05,740 --> 00:14:07,899 So you could build you could build 371 00:14:07,900 --> 00:14:10,219 in IRAM Chip into the 500 372 00:14:10,220 --> 00:14:11,499 and 2000 models. 373 00:14:11,500 --> 00:14:13,659 And then there's new versions of it 374 00:14:13,660 --> 00:14:15,759 which is still available today. 375 00:14:15,760 --> 00:14:17,499 This is the that the acts that are some 376 00:14:17,500 --> 00:14:18,549 versions of around. 377 00:14:18,550 --> 00:14:20,709 But as I say here, it's not a Commodore. 378 00:14:20,710 --> 00:14:22,419 So under license. 379 00:14:22,420 --> 00:14:25,059 Some companies are ferd 380 00:14:25,060 --> 00:14:27,489 developed those 381 00:14:27,490 --> 00:14:29,709 Afir to develop this this operating 382 00:14:29,710 --> 00:14:32,619 system, which was based on a 3.0 version. 383 00:14:32,620 --> 00:14:34,719 This is also a PowerPC based, which is 384 00:14:34,720 --> 00:14:36,999 not a CPU family and 385 00:14:37,000 --> 00:14:39,279 it's chipset independent chipset. 386 00:14:39,280 --> 00:14:41,559 Independent means the Amiga 387 00:14:41,560 --> 00:14:43,629 had I will talk about this later, had 388 00:14:43,630 --> 00:14:45,879 a very powerful chipset built 389 00:14:45,880 --> 00:14:48,009 in. It was a custom made chipset and 390 00:14:48,010 --> 00:14:50,199 the operating system depended on this. 391 00:14:50,200 --> 00:14:52,629 And the new versions of the four 392 00:14:52,630 --> 00:14:54,909 X operating system was completely 393 00:14:54,910 --> 00:14:55,809 independent of this. 394 00:14:55,810 --> 00:14:58,179 So you could actually well rounded 395 00:14:58,180 --> 00:14:59,559 on this computer. I don't know if it 396 00:14:59,560 --> 00:15:01,489 works, but probably. 397 00:15:01,490 --> 00:15:03,649 OK, there are some books that I found on 398 00:15:03,650 --> 00:15:04,650 my attic, 399 00:15:05,930 --> 00:15:08,029 the most important is this. 400 00:15:08,030 --> 00:15:10,519 Here you see a mere hardware reference 401 00:15:10,520 --> 00:15:12,499 manual. It tells everything about the 402 00:15:12,500 --> 00:15:13,429 hardware. 403 00:15:13,430 --> 00:15:15,889 So the hardware was 404 00:15:15,890 --> 00:15:18,349 open. So, so open 405 00:15:18,350 --> 00:15:20,479 in the sense of so you knew 406 00:15:20,480 --> 00:15:22,489 the circuit diagrams, everything. 407 00:15:22,490 --> 00:15:24,239 It was very well documented. 408 00:15:24,240 --> 00:15:26,299 It was not allowed to build a computer 409 00:15:26,300 --> 00:15:28,489 like this because there were yes, 410 00:15:28,490 --> 00:15:31,189 it was protected, of course, but opening 411 00:15:31,190 --> 00:15:33,199 in the sense of it was completely 412 00:15:33,200 --> 00:15:35,599 documented. And this book that tells 413 00:15:35,600 --> 00:15:38,249 everything about how the hardware works, 414 00:15:38,250 --> 00:15:40,189 then, of course, I have here the six 415 00:15:40,190 --> 00:15:42,409 eight K Microprocessor 416 00:15:42,410 --> 00:15:44,389 Instruction Manual, which is important as 417 00:15:44,390 --> 00:15:46,549 well. Then here this is 418 00:15:46,550 --> 00:15:47,629 the Amiga basic 419 00:15:48,650 --> 00:15:51,169 book which was shipped with 420 00:15:51,170 --> 00:15:53,179 the model. There was an Amiga basic 421 00:15:53,180 --> 00:15:55,549 integrator shipped 422 00:15:55,550 --> 00:15:57,349 with it and it was very well documented 423 00:15:57,350 --> 00:15:57,719 here. 424 00:15:57,720 --> 00:15:59,509 There are some other books like this. 425 00:15:59,510 --> 00:16:00,709 So it's everything German. 426 00:16:00,710 --> 00:16:03,119 I'm from Austria, Amiga, Portofino 427 00:16:03,120 --> 00:16:04,699 Hall and Amiga. In turn, that's a 428 00:16:04,700 --> 00:16:06,859 documentation of the 429 00:16:06,860 --> 00:16:07,999 system calls. 430 00:16:08,000 --> 00:16:10,189 So it had a set, a set, 431 00:16:10,190 --> 00:16:12,409 several hundred system calls built into 432 00:16:12,410 --> 00:16:14,839 several libraries to deal with graphics 433 00:16:14,840 --> 00:16:17,029 with the graphical user 434 00:16:17,030 --> 00:16:18,469 interface, to deal with the hardware, 435 00:16:18,470 --> 00:16:19,879 with the disk and so on. 436 00:16:19,880 --> 00:16:22,219 And it was very well documented, 437 00:16:22,220 --> 00:16:24,349 for example, in those books, of 438 00:16:24,350 --> 00:16:26,209 course, there were a lot of magazines 439 00:16:26,210 --> 00:16:27,259 that just found one. 440 00:16:27,260 --> 00:16:28,399 That's a kick start. 441 00:16:28,400 --> 00:16:29,929 There was also another magazine which was 442 00:16:29,930 --> 00:16:32,179 called the Amiga magazine, and 443 00:16:32,180 --> 00:16:34,399 well, like a magazine, percent 444 00:16:34,400 --> 00:16:36,559 of the new games and 445 00:16:36,560 --> 00:16:38,479 some tips and tricks and so on. 446 00:16:38,480 --> 00:16:41,099 And I have this crap here. 447 00:16:41,100 --> 00:16:43,369 OK, so my laser pointers, OK, 448 00:16:43,370 --> 00:16:45,829 the floppy book, actually, 449 00:16:45,830 --> 00:16:47,450 that that was a piece of crap 450 00:16:48,890 --> 00:16:51,709 like like this can here 451 00:16:51,710 --> 00:16:53,719 it's suggested to make some jumps into 452 00:16:53,720 --> 00:16:55,879 the ROM. So it lists 453 00:16:55,880 --> 00:16:58,009 here you can see this, but that's 454 00:16:58,010 --> 00:17:00,019 an example at least thing where it 455 00:17:00,020 --> 00:17:02,149 discusses some features that were 456 00:17:02,150 --> 00:17:04,129 in the disk library and it's suggested to 457 00:17:04,130 --> 00:17:06,140 jump into dirham, which, well, 458 00:17:07,250 --> 00:17:08,749 you know, if new versions and the 459 00:17:08,750 --> 00:17:10,078 addresses will change and so on. 460 00:17:10,079 --> 00:17:12,229 OK, however, let's 461 00:17:12,230 --> 00:17:13,949 have a look at the core components. 462 00:17:13,950 --> 00:17:17,179 So what was built into this computer? 463 00:17:17,180 --> 00:17:19,519 The core was a Motorola 464 00:17:19,520 --> 00:17:21,469 six eight K microprocessor. 465 00:17:21,470 --> 00:17:24,019 It was a more or less 30 to 32 466 00:17:24,020 --> 00:17:26,479 bit microprocessor in Zisk 467 00:17:26,480 --> 00:17:27,480 architecture. 468 00:17:28,569 --> 00:17:30,709 It had a 512 469 00:17:30,710 --> 00:17:32,929 K ram on board, expandable 470 00:17:32,930 --> 00:17:35,149 up to eight megabyte, more or less, a 471 00:17:35,150 --> 00:17:36,619 little bit more, but more or less like 472 00:17:36,620 --> 00:17:37,620 this. 473 00:17:37,940 --> 00:17:39,949 The operating system was a preemptive 474 00:17:39,950 --> 00:17:42,529 Real-Time multitasking operating system. 475 00:17:42,530 --> 00:17:44,809 So there was no water, no 476 00:17:44,810 --> 00:17:46,939 other operating system 477 00:17:46,940 --> 00:17:48,379 besides Unix, of course. 478 00:17:48,380 --> 00:17:50,689 But in the personal computer 479 00:17:50,690 --> 00:17:52,099 world, there was no other operating 480 00:17:52,100 --> 00:17:53,719 system, more or less, who had those 481 00:17:53,720 --> 00:17:55,879 features. So real multitasking operating 482 00:17:55,880 --> 00:17:56,880 system. 483 00:17:57,560 --> 00:17:59,839 It had some serious parallel ports 484 00:17:59,840 --> 00:18:01,939 for connecting printers and modems and 485 00:18:01,940 --> 00:18:03,949 whatever mouse joystick and so on. 486 00:18:03,950 --> 00:18:06,199 It had a built in three and a half inch 487 00:18:06,200 --> 00:18:07,489 disk drive. 488 00:18:07,490 --> 00:18:09,619 And what else we have there was 489 00:18:09,620 --> 00:18:11,689 an expansion slot and the 500 model, 490 00:18:11,690 --> 00:18:14,029 there was one for the front side password 491 00:18:14,030 --> 00:18:16,369 can attach external hardware such as 492 00:18:16,370 --> 00:18:18,679 a Hearties controller, and 493 00:18:18,680 --> 00:18:20,959 it had analog and digital media output. 494 00:18:20,960 --> 00:18:21,960 And 495 00:18:23,030 --> 00:18:25,699 yes, of course, audio output as well. 496 00:18:25,700 --> 00:18:27,839 So here we should see now that's 497 00:18:27,840 --> 00:18:30,199 the back view of the Amiga 500 model. 498 00:18:30,200 --> 00:18:32,039 So what we can see here is a composite 499 00:18:32,040 --> 00:18:33,709 with the output. It was more or less 500 00:18:33,710 --> 00:18:35,629 useless. I don't know why it was here. 501 00:18:35,630 --> 00:18:36,799 So it was monochrome only. 502 00:18:36,800 --> 00:18:38,209 So black and white. 503 00:18:38,210 --> 00:18:40,609 This is the video output here. 504 00:18:40,610 --> 00:18:42,259 So it had analog and digital. 505 00:18:42,260 --> 00:18:44,509 So archabbey signals here. 506 00:18:44,510 --> 00:18:47,149 That's the connector for the 507 00:18:47,150 --> 00:18:49,219 power that we have here. 508 00:18:49,220 --> 00:18:50,839 Disk drive, parallel path and serial 509 00:18:50,840 --> 00:18:53,059 port. Another order than 510 00:18:53,060 --> 00:18:55,219 we have here, the audio output. 511 00:18:55,220 --> 00:18:57,529 So stereo audio to the 512 00:18:57,530 --> 00:18:59,929 left and right and for attaching to 513 00:18:59,930 --> 00:19:02,029 external devices such as mouse or 514 00:19:02,030 --> 00:19:03,829 joystick, that's what it looked from back 515 00:19:03,830 --> 00:19:04,830 side. 516 00:19:06,410 --> 00:19:08,779 Well, some further technical 517 00:19:08,780 --> 00:19:11,089 specifications, the C.P.U 518 00:19:11,090 --> 00:19:13,309 ran at seven to zero 519 00:19:13,310 --> 00:19:16,249 nine three seven nine megahertz 520 00:19:16,250 --> 00:19:18,619 on the European models, and the American 521 00:19:18,620 --> 00:19:20,609 models had some moderate frequency. 522 00:19:20,610 --> 00:19:22,909 So you might ask, why is this such odd 523 00:19:22,910 --> 00:19:24,079 frequency? 524 00:19:24,080 --> 00:19:26,329 This is because the complete hardware 525 00:19:26,330 --> 00:19:28,729 was synchronized to the video, 526 00:19:28,730 --> 00:19:30,559 to the video signal that was standard at 527 00:19:30,560 --> 00:19:31,909 the time then. So that's a powerful 528 00:19:31,910 --> 00:19:32,929 signal. 529 00:19:32,930 --> 00:19:34,429 And the complete hardware was 530 00:19:34,430 --> 00:19:36,919 synchronized to that video signal. 531 00:19:36,920 --> 00:19:39,379 And because we had in Europe, we 532 00:19:39,380 --> 00:19:40,939 know we have we don't have anymore. 533 00:19:40,940 --> 00:19:43,209 But we had in Europe the signal. 534 00:19:43,210 --> 00:19:45,799 And this is why the frequency 535 00:19:45,800 --> 00:19:48,049 frequency such an odd frequency to help 536 00:19:48,050 --> 00:19:50,149 us. Timing, we will see then is 537 00:19:50,150 --> 00:19:51,679 synchronized completely to that. 538 00:19:51,680 --> 00:19:53,959 Plus, they 539 00:19:53,960 --> 00:19:56,089 had some custom made chips, 540 00:19:56,090 --> 00:19:58,189 so special chips, which which 541 00:19:58,190 --> 00:19:59,190 did the complete 542 00:20:00,470 --> 00:20:02,599 stuff in heart 543 00:20:02,600 --> 00:20:04,849 in audio, video and everything else. 544 00:20:04,850 --> 00:20:07,009 That's well on Ignace, Paul and Denise. 545 00:20:08,500 --> 00:20:11,259 It's had some processors internally 546 00:20:11,260 --> 00:20:12,819 I will talk about this a little bit 547 00:20:12,820 --> 00:20:15,009 later. Is the copper and splitter, it 548 00:20:15,010 --> 00:20:16,719 had several other DMA channels. 549 00:20:16,720 --> 00:20:19,179 So for those who don't know what a DMAs 550 00:20:19,180 --> 00:20:21,339 and traditional design you have, 551 00:20:21,340 --> 00:20:23,529 a CPU and CPU 552 00:20:23,530 --> 00:20:26,439 accesses the bus and everything attached, 553 00:20:26,440 --> 00:20:27,819 only the CPU. 554 00:20:27,820 --> 00:20:29,799 And if you have a DMA channel, then there 555 00:20:29,800 --> 00:20:31,899 is another device wherever you can 556 00:20:31,900 --> 00:20:34,089 also access the bus. 557 00:20:34,090 --> 00:20:36,279 So which means in parallel, of course, 558 00:20:36,280 --> 00:20:38,229 not perfectly in parallel, but several 559 00:20:38,230 --> 00:20:40,569 devices can access the bus and a memory 560 00:20:40,570 --> 00:20:41,570 that's DMA 561 00:20:42,640 --> 00:20:44,829 well and DMA was used 562 00:20:44,830 --> 00:20:47,349 for audio with planes and all features, 563 00:20:47,350 --> 00:20:49,719 which means you could do 564 00:20:49,720 --> 00:20:51,879 several tasks without using 565 00:20:51,880 --> 00:20:52,899 the CPU. 566 00:20:52,900 --> 00:20:55,420 So the DMA does that, not the CPU. 567 00:20:56,440 --> 00:20:58,569 We have a pixel resolution of up 568 00:20:58,570 --> 00:21:01,359 to sixty four times 512 569 00:21:01,360 --> 00:21:02,979 on the European models, more or less. 570 00:21:02,980 --> 00:21:05,049 So you could configure this a 571 00:21:05,050 --> 00:21:06,609 little bit, but that's more or less so 572 00:21:06,610 --> 00:21:08,689 standard resolution and 573 00:21:08,690 --> 00:21:10,779 the bit color depth, which is 574 00:21:10,780 --> 00:21:12,939 about four thousand and six and nine 575 00:21:12,940 --> 00:21:13,839 colors. 576 00:21:13,840 --> 00:21:16,059 So the graphics card, which 577 00:21:16,060 --> 00:21:18,249 was at the same time had sixteen 578 00:21:18,250 --> 00:21:20,739 colors fixed, but it couldn't display 579 00:21:20,740 --> 00:21:22,059 all at the same time. 580 00:21:22,060 --> 00:21:24,129 We have four audio channels and 581 00:21:24,130 --> 00:21:25,659 well, everything was interrupt 582 00:21:25,660 --> 00:21:27,179 controlled. 583 00:21:27,180 --> 00:21:29,459 Which is nice for softer. 584 00:21:29,460 --> 00:21:31,889 OK, about programing languages, 585 00:21:31,890 --> 00:21:33,899 so the main programing language will see 586 00:21:33,900 --> 00:21:35,879 everything was programed and see so 587 00:21:35,880 --> 00:21:37,649 everything. So the typical software was 588 00:21:37,650 --> 00:21:40,199 programed to see, of course, if 589 00:21:40,200 --> 00:21:41,789 their timing was essential. 590 00:21:41,790 --> 00:21:44,639 And we had the Sembler and 591 00:21:44,640 --> 00:21:46,829 of course, Amiga basic was also here 592 00:21:46,830 --> 00:21:49,109 for whatever it was 593 00:21:49,110 --> 00:21:50,039 built. 594 00:21:50,040 --> 00:21:52,139 It was not built in, but it came with the 595 00:21:52,140 --> 00:21:53,759 software and it was the book as well. 596 00:21:53,760 --> 00:21:56,879 And with the versions two 597 00:21:56,880 --> 00:21:58,719 and above, there was a rack. 598 00:21:58,720 --> 00:22:01,019 So it's Amiga Rex Rexes, a scripting 599 00:22:01,020 --> 00:22:03,119 language which was originally developed 600 00:22:03,120 --> 00:22:05,609 by IBM, and it was implemented 601 00:22:05,610 --> 00:22:07,709 in those. So it's, let's say, comparable 602 00:22:07,710 --> 00:22:09,929 to Witchel Basic or something like that. 603 00:22:09,930 --> 00:22:11,999 You could script a lot of stuff with this 604 00:22:12,000 --> 00:22:14,389 here. That's a typical see 605 00:22:14,390 --> 00:22:16,079 header off a function. 606 00:22:16,080 --> 00:22:17,969 It looked like this is current curtaining 607 00:22:17,970 --> 00:22:20,189 Hammond Ritchey. See, because, you know, 608 00:22:20,190 --> 00:22:22,559 to see Eighty-Nine Standard appeared 609 00:22:22,560 --> 00:22:23,609 in 1989. 610 00:22:23,610 --> 00:22:24,930 So this is before. 611 00:22:27,690 --> 00:22:29,759 OK, let's have a look at the CPI, 612 00:22:29,760 --> 00:22:31,829 the CPI with a six eight case CPA was 613 00:22:31,830 --> 00:22:33,689 one of the most powerful CPU's at that 614 00:22:33,690 --> 00:22:35,489 time. And I think that's the reason why 615 00:22:35,490 --> 00:22:37,959 it was built in so much computers. 616 00:22:37,960 --> 00:22:40,829 It was actually released in 1979, 617 00:22:40,830 --> 00:22:43,259 which is pretty early compared to 618 00:22:43,260 --> 00:22:45,329 the other C.P.U 619 00:22:45,330 --> 00:22:47,289 competitors like Intel, for example. 620 00:22:47,290 --> 00:22:49,829 They hate the 88 88, which is a 16 621 00:22:49,830 --> 00:22:51,749 bit CPA with an eight bit buzz, OK, 622 00:22:53,040 --> 00:22:55,259 six beat up quotes and also Canale 623 00:22:55,260 --> 00:22:57,239 instruction set, which means you could 624 00:22:57,240 --> 00:22:59,309 combine any addressing mode 625 00:22:59,310 --> 00:23:01,709 with every other addressing mode. 626 00:23:01,710 --> 00:23:03,959 So this comes in handy for 627 00:23:03,960 --> 00:23:05,849 programing. It's perfect for programing. 628 00:23:05,850 --> 00:23:07,589 It's really perfect for programing. 629 00:23:07,590 --> 00:23:09,449 If you want to programing assembler, of 630 00:23:09,450 --> 00:23:11,549 course, in C, you don't see that 631 00:23:11,550 --> 00:23:13,379 it had 12 different address mode. 632 00:23:13,380 --> 00:23:15,749 So Ritchies to register in direct 633 00:23:15,750 --> 00:23:17,159 and memory, direct and so on. 634 00:23:17,160 --> 00:23:19,259 OK, it had a 635 00:23:19,260 --> 00:23:21,419 nearly thirty two bit ayalew. 636 00:23:21,420 --> 00:23:23,579 So that's the 637 00:23:23,580 --> 00:23:25,799 C component within the CPU 638 00:23:25,800 --> 00:23:27,359 who actually does the operation. 639 00:23:27,360 --> 00:23:28,769 So the addition, multiple of 640 00:23:28,770 --> 00:23:30,959 multiplication and stuff like that so 641 00:23:30,960 --> 00:23:33,159 nearly is because it wasn't perfect, but 642 00:23:33,160 --> 00:23:35,369 clearly it had eight 643 00:23:35,370 --> 00:23:36,449 registers for data. 644 00:23:36,450 --> 00:23:38,609 It registers for address including 645 00:23:38,610 --> 00:23:40,829 the stack pointer 646 00:23:40,830 --> 00:23:42,509 which was the last address 647 00:23:43,650 --> 00:23:45,539 register. Of course it had a system 648 00:23:45,540 --> 00:23:48,119 status which registers all our CPU's 649 00:23:48,120 --> 00:23:49,229 half as well. 650 00:23:49,230 --> 00:23:51,569 It had a very sophisticated interrupt 651 00:23:51,570 --> 00:23:52,499 structure. 652 00:23:52,500 --> 00:23:54,809 So 256 different interrupts 653 00:23:54,810 --> 00:23:56,909 were possible, not just external 654 00:23:56,910 --> 00:23:57,929 hard interrupted. 655 00:23:57,930 --> 00:23:59,909 Also, you could define software 656 00:23:59,910 --> 00:24:02,099 interrupts, which allowed to 657 00:24:02,100 --> 00:24:04,469 actually implement your 658 00:24:04,470 --> 00:24:05,579 own instructions. 659 00:24:07,810 --> 00:24:09,939 And it appeared to have 660 00:24:09,940 --> 00:24:12,219 a user and supervisor mode, so 661 00:24:12,220 --> 00:24:14,259 that's the first step into real 662 00:24:14,260 --> 00:24:16,329 multitasking systems used 663 00:24:16,330 --> 00:24:17,299 in supervisor mode. 664 00:24:17,300 --> 00:24:19,359 So it's the 665 00:24:19,360 --> 00:24:21,279 CPU operates in the user mode. 666 00:24:21,280 --> 00:24:23,439 There is a limited instruction set and 667 00:24:23,440 --> 00:24:25,059 the supervisor mode where you can do 668 00:24:25,060 --> 00:24:27,189 everything. And that's necessary if you 669 00:24:27,190 --> 00:24:30,099 want to implement real multitasking with 670 00:24:30,100 --> 00:24:32,199 the, let's say, prevention, that some 671 00:24:32,200 --> 00:24:34,539 user land tasks access something 672 00:24:34,540 --> 00:24:35,919 else in the kernel. 673 00:24:35,920 --> 00:24:38,199 For example, the same concept 674 00:24:38,200 --> 00:24:40,269 was implemented in the entire world 675 00:24:40,270 --> 00:24:42,449 into two eighty six, 676 00:24:42,450 --> 00:24:44,379 I don't know exactly the year, but more 677 00:24:44,380 --> 00:24:45,460 or less at the same time. 678 00:24:47,440 --> 00:24:49,569 It had externally a 16 679 00:24:49,570 --> 00:24:51,909 bit database, and this meant 680 00:24:51,910 --> 00:24:54,159 that you always need at least to bust 681 00:24:54,160 --> 00:24:56,889 cycles to fetch a whole 682 00:24:56,890 --> 00:24:59,019 to 32 bit worked into 683 00:24:59,020 --> 00:25:01,119 the CPU. So externally, just 16 684 00:25:01,120 --> 00:25:03,189 bit and 24 685 00:25:03,190 --> 00:25:05,349 period response externally, which 686 00:25:05,350 --> 00:25:07,659 gives complete a total 687 00:25:07,660 --> 00:25:09,879 address space of 16 688 00:25:09,880 --> 00:25:10,880 megabytes. 689 00:25:12,170 --> 00:25:15,409 Well, that's an example for our typical 690 00:25:15,410 --> 00:25:17,299 six eight K assembler. 691 00:25:17,300 --> 00:25:19,349 Well, looks like every other assembly, 692 00:25:19,350 --> 00:25:21,529 it's AT&T Syntex, which means from left 693 00:25:21,530 --> 00:25:24,439 to right. OK, more or less 694 00:25:24,440 --> 00:25:26,049 like Intel here. 695 00:25:26,050 --> 00:25:28,329 Yes. You see that that w and 696 00:25:28,330 --> 00:25:30,409 that Elvir that indicates the 697 00:25:30,410 --> 00:25:32,479 size of the operation 698 00:25:32,480 --> 00:25:33,679 of the operation. 699 00:25:33,680 --> 00:25:35,959 So 32 bit or 16 700 00:25:35,960 --> 00:25:37,940 bit or HP 20. 701 00:25:41,900 --> 00:25:43,519 Follow up, but also there were some 702 00:25:43,520 --> 00:25:45,769 follow up models, this was the 703 00:25:45,770 --> 00:25:48,079 sixty eight or 10 model 704 00:25:48,080 --> 00:25:50,299 which had a virtual memory support. 705 00:25:50,300 --> 00:25:52,009 The six eight K didn't have virtual 706 00:25:52,010 --> 00:25:53,010 memory support, 707 00:25:54,560 --> 00:25:56,629 which would be necessary for good 708 00:25:56,630 --> 00:25:57,529 operating system. 709 00:25:57,530 --> 00:25:59,869 Then we had to six to eight twenty, which 710 00:25:59,870 --> 00:26:02,479 had a real full twenty third stupid 711 00:26:02,480 --> 00:26:04,909 idea and externally 32 712 00:26:04,910 --> 00:26:07,129 bit bus and a memory management 713 00:26:07,130 --> 00:26:09,409 unit. So that's the memory management 714 00:26:09,410 --> 00:26:11,119 unit is in my opinion, 715 00:26:12,440 --> 00:26:14,479 the biggest lack of the Amiga computer 716 00:26:14,480 --> 00:26:16,399 because it had so the original model. 717 00:26:16,400 --> 00:26:18,289 So Memory Management Unit is necessary 718 00:26:18,290 --> 00:26:20,929 for preventing access to, 719 00:26:20,930 --> 00:26:23,119 let's say, disallowed 720 00:26:23,120 --> 00:26:25,309 memory reach and so that the kernel 721 00:26:25,310 --> 00:26:27,439 could lock a user, 722 00:26:27,440 --> 00:26:30,019 a user land process somewhere 723 00:26:30,020 --> 00:26:31,729 into a specific memory area. 724 00:26:31,730 --> 00:26:33,979 The Amiga didn't have that 725 00:26:33,980 --> 00:26:36,079 or the original model didn't 726 00:26:36,080 --> 00:26:37,069 have that. Yes. 727 00:26:37,070 --> 00:26:38,539 And then came some other models. 728 00:26:38,540 --> 00:26:39,799 That's not complete. You see it 729 00:26:39,800 --> 00:26:40,800 continuous here. 730 00:26:42,280 --> 00:26:44,469 OK, that's the main part of the Amiga 731 00:26:44,470 --> 00:26:47,079 five hundred, what we see here is 732 00:26:47,080 --> 00:26:49,029 on the left side here, that's the CPU. 733 00:26:49,030 --> 00:26:51,829 So it's still packed, 64 pins, 734 00:26:51,830 --> 00:26:53,859 six to eight K processor. 735 00:26:53,860 --> 00:26:55,869 Then here is the ROM. 736 00:26:55,870 --> 00:26:57,549 Actually, that's an extension I built 737 00:26:57,550 --> 00:26:59,949 myself here for for the new kick start. 738 00:26:59,950 --> 00:27:01,839 So that's the ROM here. 739 00:27:01,840 --> 00:27:04,749 Down below we have the dynamic 740 00:27:04,750 --> 00:27:06,879 ram. So it's a 512 741 00:27:06,880 --> 00:27:09,309 K here is 742 00:27:09,310 --> 00:27:10,299 the Ignace. 743 00:27:10,300 --> 00:27:12,789 So that's one of the core parts 744 00:27:12,790 --> 00:27:14,829 of the custom chip set of the custom 745 00:27:14,830 --> 00:27:17,289 chips here than we have here, Paula, 746 00:27:17,290 --> 00:27:20,259 which was mainly used for the audio 747 00:27:20,260 --> 00:27:21,790 DMA and audio output. 748 00:27:22,810 --> 00:27:24,369 What else do we have here? 749 00:27:24,370 --> 00:27:25,569 This is Denise. 750 00:27:25,570 --> 00:27:27,729 Denise is responsible 751 00:27:27,730 --> 00:27:29,709 for the video output and the video dimir 752 00:27:30,880 --> 00:27:31,899 than we have here. 753 00:27:31,900 --> 00:27:33,579 What else? This is Gary. 754 00:27:33,580 --> 00:27:35,619 So Gary is, let's say, stupid boss 755 00:27:35,620 --> 00:27:37,269 controller. That's the complete boss 756 00:27:37,270 --> 00:27:39,070 arbitration for 757 00:27:40,570 --> 00:27:43,119 communication between those chips. 758 00:27:43,120 --> 00:27:45,399 And here are two CIA. 759 00:27:45,400 --> 00:27:47,139 So they called it CIAs that when you 760 00:27:47,140 --> 00:27:49,419 think the CIA means complex interface 761 00:27:49,420 --> 00:27:51,579 adapter, basically it's 762 00:27:51,580 --> 00:27:53,649 a typical peripheral device. 763 00:27:53,650 --> 00:27:55,419 Ciotat some parallel Io's. 764 00:27:55,420 --> 00:27:57,219 It had some serial ports and some 765 00:27:57,220 --> 00:27:59,169 interrupt logic and stuff like that. 766 00:27:59,170 --> 00:28:01,479 So basic peripheral device. 767 00:28:01,480 --> 00:28:03,699 What do you need, what you need 768 00:28:03,700 --> 00:28:04,779 in a computer. 769 00:28:04,780 --> 00:28:05,949 This is the disk drive. 770 00:28:05,950 --> 00:28:08,319 Well, yes. And here's the connectors 771 00:28:08,320 --> 00:28:10,509 where I showed you the picture before 772 00:28:10,510 --> 00:28:11,510 from the back side. 773 00:28:13,260 --> 00:28:15,779 I yes, that's 774 00:28:15,780 --> 00:28:17,999 that's a two megabyte extension, 775 00:28:18,000 --> 00:28:20,099 so one step back here is a connector. 776 00:28:20,100 --> 00:28:21,899 You see, you could plug it in here 777 00:28:21,900 --> 00:28:23,729 something. It's the internal connector, 778 00:28:23,730 --> 00:28:25,169 for example, this year. 779 00:28:25,170 --> 00:28:27,539 So that's a two megabyte internal ram 780 00:28:27,540 --> 00:28:29,609 extension. So actually, it's one that 781 00:28:29,610 --> 00:28:30,759 eight megabyte you will see. 782 00:28:30,760 --> 00:28:33,179 Then why slow ram? 783 00:28:33,180 --> 00:28:35,279 OK, we'll see why it's low ram. 784 00:28:35,280 --> 00:28:37,469 This is this was about 200 785 00:28:37,470 --> 00:28:38,909 euros, so. 786 00:28:38,910 --> 00:28:41,489 Twenty five years ago for two megabytes, 787 00:28:41,490 --> 00:28:42,490 OK. 788 00:28:43,220 --> 00:28:45,589 She over half the Amiga two thousand 789 00:28:45,590 --> 00:28:47,539 model, so the hardware, it's more or less 790 00:28:47,540 --> 00:28:49,579 the same. We have here the six to eight K 791 00:28:49,580 --> 00:28:51,079 processor here. 792 00:28:51,080 --> 00:28:53,179 Here is the RAM that we have 793 00:28:53,180 --> 00:28:54,529 to Gary. 794 00:28:54,530 --> 00:28:56,839 And here we have the sorry. 795 00:28:56,840 --> 00:28:58,849 Here's the RAM. And here is. 796 00:29:00,410 --> 00:29:02,449 I don't know why it is scary, and then we 797 00:29:02,450 --> 00:29:05,319 have Denise and Paula here to CIAs. 798 00:29:05,320 --> 00:29:07,879 This is this was called Buster. 799 00:29:07,880 --> 00:29:09,979 So it was a specific device which 800 00:29:09,980 --> 00:29:12,559 controlled here the extension 801 00:29:12,560 --> 00:29:14,869 boards, although the real Amiga 802 00:29:14,870 --> 00:29:16,819 extension boards are these here that the 803 00:29:16,820 --> 00:29:17,820 lower one. So. 804 00:29:20,020 --> 00:29:22,389 OK, it doesn't work, I go here 805 00:29:22,390 --> 00:29:24,499 to these one are called sorrow 806 00:29:24,500 --> 00:29:26,589 slots, so they were connected to the 807 00:29:26,590 --> 00:29:28,659 boss of the Amiga computer and 808 00:29:28,660 --> 00:29:30,849 those slots here are ISO slots 809 00:29:30,850 --> 00:29:32,799 16 and eight with ISO slots. 810 00:29:32,800 --> 00:29:35,499 So you could insert a bridge card 811 00:29:35,500 --> 00:29:38,589 which had a, for example, at 286 812 00:29:38,590 --> 00:29:40,959 CPU on board, and then you could add 813 00:29:40,960 --> 00:29:43,329 a standard to IBM compatible 814 00:29:43,330 --> 00:29:45,489 cards in here into the outer ISIS forces, 815 00:29:45,490 --> 00:29:46,779 which are connected. There was no 816 00:29:46,780 --> 00:29:49,059 connection to the rest of the system 817 00:29:49,060 --> 00:29:51,579 here. We had a slot for a core processor, 818 00:29:51,580 --> 00:29:53,439 like a floating point unit. 819 00:29:53,440 --> 00:29:55,029 And on this side here is another 820 00:29:55,030 --> 00:29:56,199 connector. 821 00:29:56,200 --> 00:29:58,329 It was a connection to the video hardware 822 00:29:58,330 --> 00:30:00,939 and it allowed to add a specific 823 00:30:00,940 --> 00:30:03,099 video card with 824 00:30:03,100 --> 00:30:05,619 which you could synchronize the port. 825 00:30:05,620 --> 00:30:08,589 So the whole Amiga ports to the external 826 00:30:08,590 --> 00:30:09,969 video clock. 827 00:30:09,970 --> 00:30:12,219 And what you could do with this is 828 00:30:12,220 --> 00:30:14,319 mixing, mixing, 829 00:30:14,320 --> 00:30:16,329 mixing video signals. 830 00:30:19,250 --> 00:30:20,250 Yeah, OK. 831 00:30:22,520 --> 00:30:24,109 There is this controller. 832 00:30:24,110 --> 00:30:26,239 OK, so here I have a hardware 833 00:30:26,240 --> 00:30:28,429 block diagram that looked like this, so 834 00:30:28,430 --> 00:30:30,349 that's actually a wire, more or less a 835 00:30:30,350 --> 00:30:32,479 wire diagram where we can see here on 836 00:30:32,480 --> 00:30:33,019 the left side. 837 00:30:33,020 --> 00:30:35,629 And CPU's, here is the database address 838 00:30:35,630 --> 00:30:37,160 and here the three 839 00:30:38,570 --> 00:30:40,699 three custom-made 840 00:30:40,700 --> 00:30:43,009 chips which were connected through a bus 841 00:30:43,010 --> 00:30:45,049 here as well. And to your below, we had 842 00:30:45,050 --> 00:30:47,509 the 512 K built in 843 00:30:47,510 --> 00:30:49,789 RAM and, 844 00:30:49,790 --> 00:30:52,529 well, expansion ports and so on. 845 00:30:52,530 --> 00:30:54,349 But what's more interesting is this here, 846 00:30:54,350 --> 00:30:56,449 that's a functional block diagram. 847 00:30:56,450 --> 00:30:58,609 So this actually shows here 848 00:30:58,610 --> 00:31:00,829 on the left side the CPU 849 00:31:00,830 --> 00:31:03,049 and this is what we today call 850 00:31:03,050 --> 00:31:04,699 the front side bar. So that's actually 851 00:31:04,700 --> 00:31:06,569 the CPU bassets, the data and the 852 00:31:06,570 --> 00:31:08,329 response directly connected. 853 00:31:08,330 --> 00:31:10,729 We had the two CIAs for the, 854 00:31:10,730 --> 00:31:12,529 you know, several ports and so on. 855 00:31:12,530 --> 00:31:13,519 Here's the kick start. 856 00:31:13,520 --> 00:31:15,949 So that's that's the ROM which 857 00:31:15,950 --> 00:31:18,079 which had the operating 858 00:31:18,080 --> 00:31:20,659 system in it here, the connection 859 00:31:20,660 --> 00:31:23,269 to the expansion Connector expansion 860 00:31:23,270 --> 00:31:25,379 connectors for external hardware. 861 00:31:25,380 --> 00:31:27,499 And here in between there is 862 00:31:27,500 --> 00:31:28,549 bus arbitration. 863 00:31:28,550 --> 00:31:30,859 So let's say some logic. 864 00:31:30,860 --> 00:31:33,169 And on the right side here we see 865 00:31:33,170 --> 00:31:35,299 the chips. So the custommade chips, it's 866 00:31:35,300 --> 00:31:37,159 Ignis Ballentine's. 867 00:31:37,160 --> 00:31:39,229 And what they actually did is 868 00:31:39,230 --> 00:31:41,329 they built actually two computers into 869 00:31:41,330 --> 00:31:43,489 one into 870 00:31:43,490 --> 00:31:45,889 one model port and they were completely 871 00:31:45,890 --> 00:31:48,229 separated by this logic 872 00:31:48,230 --> 00:31:50,329 here. So this was the 873 00:31:50,330 --> 00:31:52,429 custom chips which had their own plastic 874 00:31:52,430 --> 00:31:55,129 that could communicate to each other 875 00:31:55,130 --> 00:31:57,529 and of course access the 876 00:31:57,530 --> 00:31:58,999 what was called the chip ram. 877 00:31:59,000 --> 00:32:00,739 It was called Chip Ram because the chips, 878 00:32:00,740 --> 00:32:02,599 the custom made chips could access the 879 00:32:02,600 --> 00:32:04,849 chip rum and was completely separated 880 00:32:04,850 --> 00:32:06,259 from the CPU. 881 00:32:06,260 --> 00:32:08,779 On the other side, the six eight CPU 882 00:32:08,780 --> 00:32:11,059 had connectors 883 00:32:11,060 --> 00:32:13,519 for external parts arbitration. 884 00:32:13,520 --> 00:32:15,949 That means it was possible that other 885 00:32:15,950 --> 00:32:18,289 devices outside could access 886 00:32:18,290 --> 00:32:20,299 the bus, which was necessary for the DMA, 887 00:32:20,300 --> 00:32:22,789 of course. OK, so if 888 00:32:22,790 --> 00:32:26,149 the CPU here so the six to eight CPU 889 00:32:26,150 --> 00:32:28,279 wanted to access this 890 00:32:28,280 --> 00:32:30,699 memory, it had to request 891 00:32:30,700 --> 00:32:32,959 this to go to the bus arbiter and say 892 00:32:32,960 --> 00:32:35,059 I'd like to access the bus now 893 00:32:35,060 --> 00:32:36,859 and the bus arbitrate. 894 00:32:36,860 --> 00:32:39,559 The bus operator could say yes or no. 895 00:32:39,560 --> 00:32:40,559 OK. 896 00:32:40,560 --> 00:32:42,529 And that's actually so. 897 00:32:42,530 --> 00:32:43,459 So what? 898 00:32:43,460 --> 00:32:45,559 What the power of the computer made. 899 00:32:45,560 --> 00:32:47,479 So we had the custom chips, which were a 900 00:32:47,480 --> 00:32:50,539 computer for themselves, 901 00:32:50,540 --> 00:32:52,639 and they had to wait for the CPU 902 00:32:52,640 --> 00:32:53,640 or whatever. 903 00:32:55,570 --> 00:32:58,089 OK, this is the memory map off the 904 00:32:58,090 --> 00:33:00,639 computer we had 905 00:33:00,640 --> 00:33:02,739 we have a total of 16 906 00:33:02,740 --> 00:33:05,409 megabytes, so that's a 24, 907 00:33:05,410 --> 00:33:07,479 but that's a 24 908 00:33:07,480 --> 00:33:08,979 bit to address here. 909 00:33:08,980 --> 00:33:10,659 So here on top. 910 00:33:10,660 --> 00:33:12,789 So at the at the lowest addresses, we 911 00:33:12,790 --> 00:33:14,259 have feared the chip ram. 912 00:33:14,260 --> 00:33:15,729 So this is the ram that you've seen 913 00:33:15,730 --> 00:33:17,559 before where the chips can access new 914 00:33:17,560 --> 00:33:20,169 models, could access the next 512. 915 00:33:20,170 --> 00:33:22,579 So that's one megabyte and even 916 00:33:22,580 --> 00:33:24,729 newer models. So with the X, so 917 00:33:24,730 --> 00:33:26,619 there was a bit big fat Agnese and 918 00:33:26,620 --> 00:33:28,839 exiguous, however, could even 919 00:33:28,840 --> 00:33:31,719 access in total two megabytes of memory. 920 00:33:31,720 --> 00:33:33,249 The chips could access this. 921 00:33:33,250 --> 00:33:35,349 So on the previous diagram, that's 922 00:33:35,350 --> 00:33:38,229 the chip that was on the right side. 923 00:33:38,230 --> 00:33:40,899 Then here is a whole of eight megabyte 924 00:33:40,900 --> 00:33:42,909 other config space. 925 00:33:42,910 --> 00:33:45,039 That means that's a memory space 926 00:33:45,040 --> 00:33:47,169 which was dedicated to 927 00:33:47,170 --> 00:33:48,849 the extension hardware. 928 00:33:48,850 --> 00:33:51,279 OK, and as the previous diagram showed, 929 00:33:51,280 --> 00:33:52,960 the chips couldn't access that. 930 00:33:54,190 --> 00:33:57,039 Then we have some the CIA's here 931 00:33:57,040 --> 00:33:58,989 and this is. 932 00:33:58,990 --> 00:34:01,209 This year is internal 933 00:34:01,210 --> 00:34:03,219 expansion's not one, not five and two 934 00:34:03,220 --> 00:34:05,559 hundred and fifty six k that 935 00:34:05,560 --> 00:34:07,959 was so I'm sure this again 936 00:34:07,960 --> 00:34:08,960 here. 937 00:34:11,230 --> 00:34:13,569 That's here. It wasn't the internal boss 938 00:34:13,570 --> 00:34:16,238 of the chips and the memory, 939 00:34:16,239 --> 00:34:18,369 so so the address allocation was done 940 00:34:18,370 --> 00:34:20,439 in that way, however, and that's 941 00:34:20,440 --> 00:34:23,019 why the actually the internal 942 00:34:23,020 --> 00:34:25,569 mammary expansion just had one that eight 943 00:34:25,570 --> 00:34:27,519 megabytes here because the other 944 00:34:27,520 --> 00:34:29,169 addresses were reserved for something 945 00:34:29,170 --> 00:34:31,509 else. OK, then at the end 946 00:34:31,510 --> 00:34:33,789 of the memory, we had 256 947 00:34:33,790 --> 00:34:35,859 K rom for the 948 00:34:35,860 --> 00:34:38,079 version, one of the operating system 949 00:34:38,080 --> 00:34:39,279 and the new operating system. 950 00:34:39,280 --> 00:34:41,408 So to add up to two up to version, 951 00:34:41,409 --> 00:34:43,599 a tough version, two, we had an order 952 00:34:43,600 --> 00:34:46,419 256, so 512 953 00:34:46,420 --> 00:34:47,420 in total. 954 00:34:51,130 --> 00:34:53,289 OK, have a look at the custom chips. 955 00:34:54,469 --> 00:34:56,988 They had some special function registers 956 00:34:56,989 --> 00:34:58,170 where he could control them. 957 00:34:59,240 --> 00:35:01,489 Mainly, they did the interrupt control 958 00:35:01,490 --> 00:35:04,009 of everything here and the bus control. 959 00:35:04,010 --> 00:35:06,139 So all chips together, OK? 960 00:35:06,140 --> 00:35:08,329 The bus control means controlling 961 00:35:08,330 --> 00:35:10,459 who accesses the bus because always 962 00:35:10,460 --> 00:35:12,499 just a single device can access the bus. 963 00:35:12,500 --> 00:35:14,869 So those control this. 964 00:35:14,870 --> 00:35:16,729 There was a bit playing the audio of this 965 00:35:16,730 --> 00:35:18,739 made in here and the glitter and the 966 00:35:18,740 --> 00:35:20,869 copper. So which were special 967 00:35:20,870 --> 00:35:22,370 special processors 968 00:35:23,480 --> 00:35:26,149 will which I will explain immediately, 969 00:35:26,150 --> 00:35:28,429 said a bit plain. Daymo is the DMA, 970 00:35:28,430 --> 00:35:31,249 which is responsible for displaying 971 00:35:31,250 --> 00:35:32,269 whatever something. 972 00:35:32,270 --> 00:35:34,639 OK, it had several 973 00:35:34,640 --> 00:35:37,639 resolutions here, so 200, 974 00:35:37,640 --> 00:35:40,669 320 to 640 975 00:35:40,670 --> 00:35:42,229 times 512. 976 00:35:42,230 --> 00:35:44,749 So that were more or less the standard 977 00:35:44,750 --> 00:35:45,750 resolutions. 978 00:35:46,760 --> 00:35:48,769 You could have up to six bit planes and 979 00:35:48,770 --> 00:35:50,959 the planes actually selected 980 00:35:50,960 --> 00:35:52,129 the colors. 981 00:35:52,130 --> 00:35:54,289 So the colors were not stored like it is 982 00:35:54,290 --> 00:35:56,509 today in the 983 00:35:56,510 --> 00:35:59,419 modern graphics card directly. 984 00:35:59,420 --> 00:36:01,639 So the planes were decoded, 985 00:36:01,640 --> 00:36:03,749 the color register and a color register 986 00:36:03,750 --> 00:36:06,439 then holds the color actually. 987 00:36:06,440 --> 00:36:08,479 So and within the color register you 988 00:36:08,480 --> 00:36:09,769 could define the color. 989 00:36:09,770 --> 00:36:11,959 So it's three times for Bitzer, which 990 00:36:11,960 --> 00:36:12,960 makes up 991 00:36:14,180 --> 00:36:16,579 four thousand ninety six Total 992 00:36:16,580 --> 00:36:18,859 Colors, and it has some special 993 00:36:18,860 --> 00:36:21,169 notes. It's a dual playfield mode. 994 00:36:21,170 --> 00:36:22,889 I will show that in the next slide. 995 00:36:22,890 --> 00:36:25,069 Then it had to hold and modify 996 00:36:25,070 --> 00:36:27,589 hame. So hold and modify mode 997 00:36:27,590 --> 00:36:29,809 with this mode could display all 998 00:36:29,810 --> 00:36:32,269 colors at the same time 999 00:36:32,270 --> 00:36:34,489 and rarely use 1000 00:36:34,490 --> 00:36:36,709 top flight mode where it could display 1001 00:36:36,710 --> 00:36:38,869 64 colors 1002 00:36:38,870 --> 00:36:39,529 at once. 1003 00:36:39,530 --> 00:36:40,530 So at the same time. 1004 00:36:42,410 --> 00:36:44,239 Here you can see how the pit plaints 1005 00:36:44,240 --> 00:36:46,459 works at a bit, plaints is a 1006 00:36:46,460 --> 00:36:48,829 memory regions', just a memory regents' 1007 00:36:48,830 --> 00:36:51,079 containing the bits for one 1008 00:36:51,080 --> 00:36:53,089 bit, OK? 1009 00:36:53,090 --> 00:36:55,259 Of course, mammaries spight oriented, 1010 00:36:55,260 --> 00:36:57,499 not beat up, oriented to one bite, 1011 00:36:57,500 --> 00:36:59,539 always contains eight bits. 1012 00:36:59,540 --> 00:37:01,789 And the hardware then 1013 00:37:01,790 --> 00:37:04,429 took all those five planes overlayed 1014 00:37:04,430 --> 00:37:06,769 them and took out those 1015 00:37:06,770 --> 00:37:09,019 one bit of each bit plain and 1016 00:37:09,020 --> 00:37:11,269 those together give 1017 00:37:11,270 --> 00:37:13,369 the address off the color register 1018 00:37:13,370 --> 00:37:15,569 and the actual color then was stored 1019 00:37:15,570 --> 00:37:17,569 within the color register here. 1020 00:37:17,570 --> 00:37:19,789 OK, so that, that is not 1021 00:37:19,790 --> 00:37:21,199 the color, that's the number of the 1022 00:37:21,200 --> 00:37:23,299 register which then contains the 1023 00:37:23,300 --> 00:37:24,300 color. 1024 00:37:25,480 --> 00:37:27,459 Here we have the dual playfield Moat's 1025 00:37:27,460 --> 00:37:29,979 and dual playfield military hardware 1026 00:37:29,980 --> 00:37:32,149 combined to separate play 1027 00:37:32,150 --> 00:37:34,239 fields, which mean you had to 1028 00:37:34,240 --> 00:37:35,240 separate. 1029 00:37:35,840 --> 00:37:38,119 Visual object software 1030 00:37:38,120 --> 00:37:40,399 and hardware combined them like 1031 00:37:40,400 --> 00:37:43,399 it is shown here, to hit typical 1032 00:37:43,400 --> 00:37:45,499 gaming, gaming, few 1033 00:37:45,500 --> 00:37:46,159 of whatever. 1034 00:37:46,160 --> 00:37:48,499 Here you have a tank here, whatever. 1035 00:37:48,500 --> 00:37:50,659 So there's one play field, which is 1036 00:37:50,660 --> 00:37:52,219 the display where you see everything. 1037 00:37:52,220 --> 00:37:54,109 And here's the background image and the 1038 00:37:54,110 --> 00:37:56,569 hardware then combined both together. 1039 00:37:56,570 --> 00:37:58,759 And there is a transparent color 1040 00:37:58,760 --> 00:38:01,159 where the second 1041 00:38:01,160 --> 00:38:02,160 plane was 1042 00:38:04,370 --> 00:38:06,439 was added from from the hardware 1043 00:38:06,440 --> 00:38:07,440 itself. OK. 1044 00:38:09,730 --> 00:38:11,349 Yes, we had spritzes. 1045 00:38:12,680 --> 00:38:14,779 So I'm not sure if everybody knows what a 1046 00:38:14,780 --> 00:38:17,239 Sprite this Sprite is a graphics 1047 00:38:17,240 --> 00:38:18,769 object. 1048 00:38:18,770 --> 00:38:21,019 Which is added by hardware, 1049 00:38:21,020 --> 00:38:23,299 so it's not combined with the CPU 1050 00:38:23,300 --> 00:38:25,609 somewhere, it's just a piece of hardware, 1051 00:38:25,610 --> 00:38:27,139 it's just done by hardware. 1052 00:38:27,140 --> 00:38:29,419 So it's a small image which is added 1053 00:38:29,420 --> 00:38:31,399 to the total image by hardware. 1054 00:38:31,400 --> 00:38:32,989 So do you mean computer had eight 1055 00:38:32,990 --> 00:38:34,099 independent sprites? 1056 00:38:34,100 --> 00:38:36,319 By default, each had two 1057 00:38:36,320 --> 00:38:38,029 bit planes. So which means it's three 1058 00:38:38,030 --> 00:38:40,399 colors because one is transparent. 1059 00:38:40,400 --> 00:38:42,709 You could also combine two sprites 1060 00:38:42,710 --> 00:38:44,819 and you had just four, but each 1061 00:38:44,820 --> 00:38:46,249 Sprite then had 15 colors. 1062 00:38:46,250 --> 00:38:48,409 So four bits is 15 colors and the 1063 00:38:49,580 --> 00:38:50,779 transparent color. 1064 00:38:50,780 --> 00:38:53,059 But you had the possibility 1065 00:38:53,060 --> 00:38:55,339 to reuse DMA channels 1066 00:38:55,340 --> 00:38:57,799 in a later time of the screen 1067 00:38:57,800 --> 00:38:59,989 buildup. OK, so 1068 00:38:59,990 --> 00:39:01,969 if you have in the upper portion of the 1069 00:39:01,970 --> 00:39:04,099 screen eight sprites and you could reuse 1070 00:39:04,100 --> 00:39:05,749 it in the lower portion again, so then 1071 00:39:05,750 --> 00:39:08,629 you have more or less 16 or how 1072 00:39:08,630 --> 00:39:10,699 how many you even can 1073 00:39:10,700 --> 00:39:12,019 program in your software. 1074 00:39:13,040 --> 00:39:15,289 And it had a hardware based collision 1075 00:39:15,290 --> 00:39:16,549 detection. 1076 00:39:16,550 --> 00:39:18,199 So a collision detection is important. 1077 00:39:18,200 --> 00:39:19,909 If you have several sprites, think on a 1078 00:39:19,910 --> 00:39:21,769 game there's something moving and if they 1079 00:39:21,770 --> 00:39:23,689 collide, then something happens and 1080 00:39:23,690 --> 00:39:25,459 something explodes or whatever you gain 1081 00:39:25,460 --> 00:39:27,769 some whatever health 1082 00:39:27,770 --> 00:39:29,899 points or stuff like that. 1083 00:39:29,900 --> 00:39:32,029 And the collision actually of of 1084 00:39:32,030 --> 00:39:34,099 the two sprites were done by 1085 00:39:34,100 --> 00:39:37,129 hardware. So during during 1086 00:39:37,130 --> 00:39:39,229 screen build ups or during combination 1087 00:39:39,230 --> 00:39:41,449 of planes, it compared 1088 00:39:41,450 --> 00:39:42,649 each bit to each other. 1089 00:39:42,650 --> 00:39:44,809 And then it recognized there is 1090 00:39:44,810 --> 00:39:47,059 a collision and there was 1091 00:39:47,060 --> 00:39:48,649 a registered special function retros. 1092 00:39:48,650 --> 00:39:50,539 That's a custom chip register where it 1093 00:39:50,540 --> 00:39:52,789 could ask for was the CPU and see, OK, 1094 00:39:52,790 --> 00:39:53,869 there is a collision now. 1095 00:39:55,780 --> 00:39:57,939 Well, OK, that's this generation how 1096 00:39:57,940 --> 00:40:00,519 how this generation actually works works 1097 00:40:00,520 --> 00:40:01,520 like. 1098 00:40:03,480 --> 00:40:05,819 We have up to six planes and the six 1099 00:40:05,820 --> 00:40:08,129 planes, planes are memory 1100 00:40:08,130 --> 00:40:10,379 programed, so there is not a fixed 1101 00:40:10,380 --> 00:40:10,839 address. 1102 00:40:10,840 --> 00:40:12,869 So you put the stuff somewhere into the 1103 00:40:12,870 --> 00:40:15,269 chip memory and then you assign 1104 00:40:15,270 --> 00:40:17,699 a value to the chip register 1105 00:40:17,700 --> 00:40:19,949 and say, OK, this plane starts there 1106 00:40:19,950 --> 00:40:21,329 and there and they are in there. 1107 00:40:21,330 --> 00:40:22,679 So there was no 1108 00:40:23,970 --> 00:40:25,529 fixed address. 1109 00:40:25,530 --> 00:40:26,999 That's true for the sprites as well. 1110 00:40:27,000 --> 00:40:29,699 And you could, of course, pixel push 1111 00:40:29,700 --> 00:40:31,949 position them, not just bytes 1112 00:40:31,950 --> 00:40:34,889 because about eight pixels, of course, 1113 00:40:34,890 --> 00:40:36,959 and the media hardware reads 1114 00:40:36,960 --> 00:40:39,189 the bits determines priority. 1115 00:40:39,190 --> 00:40:40,679 So which is higher, which is lower. 1116 00:40:40,680 --> 00:40:42,509 So which is which bit plane is above 1117 00:40:42,510 --> 00:40:44,579 which other plane than 1118 00:40:44,580 --> 00:40:46,139 it chooses to color from the color 1119 00:40:46,140 --> 00:40:48,489 registers it generates the beam color. 1120 00:40:48,490 --> 00:40:50,369 So what you actually see on the screen 1121 00:40:50,370 --> 00:40:53,189 and it generates or it detects 1122 00:40:53,190 --> 00:40:55,020 collision if there is a collision. 1123 00:40:56,980 --> 00:40:59,049 OK, the copper is one of the 1124 00:40:59,050 --> 00:41:01,119 important core processors or one 1125 00:41:01,120 --> 00:41:03,189 of the most. It's been synchronized. 1126 00:41:03,190 --> 00:41:05,319 That means the whole system, as I said in 1127 00:41:05,320 --> 00:41:07,049 the beginning, is synchronized with the 1128 00:41:07,050 --> 00:41:09,439 video signal and informal times. 1129 00:41:09,440 --> 00:41:11,649 The video signal was generated by 1130 00:41:11,650 --> 00:41:13,269 video beam who was drawing. 1131 00:41:13,270 --> 00:41:15,399 OK, I think everybody knows that. 1132 00:41:15,400 --> 00:41:17,439 And the whole system was synchronized to 1133 00:41:17,440 --> 00:41:18,789 that, OK? 1134 00:41:18,790 --> 00:41:21,009 And the copper was synchronized to that 1135 00:41:21,010 --> 00:41:24,009 beam so that copper knew at every time 1136 00:41:24,010 --> 00:41:26,169 where exactly the beam is. 1137 00:41:26,170 --> 00:41:28,959 And that's important for smooth graphics, 1138 00:41:28,960 --> 00:41:30,759 because if you don't have that, it starts 1139 00:41:30,760 --> 00:41:32,409 to flicker and stuff like that. 1140 00:41:32,410 --> 00:41:34,929 What you've seen on the Intel test-Drive 1141 00:41:34,930 --> 00:41:37,179 implementation sounds like that it 1142 00:41:37,180 --> 00:41:38,659 had three commands. The wait to move and 1143 00:41:38,660 --> 00:41:40,929 the skip instruction so you could wait 1144 00:41:40,930 --> 00:41:43,119 for a specific beam position and then 1145 00:41:43,120 --> 00:41:44,709 move. So right. 1146 00:41:44,710 --> 00:41:47,259 Data to some to some register. 1147 00:41:47,260 --> 00:41:49,449 So you could add a specific position, 1148 00:41:49,450 --> 00:41:51,579 modify some, let's say, 1149 00:41:51,580 --> 00:41:53,679 the Sprite address, so 1150 00:41:53,680 --> 00:41:55,209 you could start and use prior to the 1151 00:41:55,210 --> 00:41:57,699 specific address of the beam. 1152 00:41:57,700 --> 00:42:00,009 And it had skip 1153 00:42:00,010 --> 00:42:02,109 instruction which with which you could 1154 00:42:02,110 --> 00:42:04,299 skip if the beam was already 1155 00:42:04,300 --> 00:42:06,309 behind the location where you were 1156 00:42:06,310 --> 00:42:08,469 waiting for OK, it 1157 00:42:08,470 --> 00:42:10,749 could even modify its own registers. 1158 00:42:10,750 --> 00:42:12,159 So its own program. 1159 00:42:12,160 --> 00:42:13,869 So it had its own program, which was 1160 00:42:13,870 --> 00:42:15,999 called the Copper List, and it 1161 00:42:16,000 --> 00:42:18,219 had passed priority over Deflater into 1162 00:42:18,220 --> 00:42:20,439 CPU. So that means if 1163 00:42:20,440 --> 00:42:23,349 there was urgent access to the pass 1164 00:42:23,350 --> 00:42:25,269 because only a single device can access 1165 00:42:25,270 --> 00:42:27,519 the bus at one time, the copper 1166 00:42:27,520 --> 00:42:29,769 got priority to fulfill its task. 1167 00:42:31,860 --> 00:42:33,769 Then we have to plater, which is the 1168 00:42:33,770 --> 00:42:36,429 second very important 1169 00:42:36,430 --> 00:42:38,419 processor in the computer, so Plater 1170 00:42:38,420 --> 00:42:40,489 actually means block image TransFair. 1171 00:42:40,490 --> 00:42:43,369 So it was a ADMA 1172 00:42:43,370 --> 00:42:45,469 system which could copy image 1173 00:42:45,470 --> 00:42:48,259 blocks from A to B 1174 00:42:48,260 --> 00:42:50,359 and image blocks the interesting 1175 00:42:50,360 --> 00:42:51,289 about image block. 1176 00:42:51,290 --> 00:42:53,839 That's not a linear memory space 1177 00:42:53,840 --> 00:42:56,209 because if you just cut out the piece 1178 00:42:56,210 --> 00:42:58,789 of an image, then you have behind 1179 00:42:58,790 --> 00:43:00,559 there is something that you have to skip 1180 00:43:00,560 --> 00:43:02,509 and the plate and what's possible to do 1181 00:43:02,510 --> 00:43:05,179 that. And that was also responsible 1182 00:43:05,180 --> 00:43:07,759 for the smooth moving 1183 00:43:07,760 --> 00:43:09,949 graphics user interface so 1184 00:43:09,950 --> 00:43:11,209 you could move the windows around. 1185 00:43:11,210 --> 00:43:12,499 And that was really quick. 1186 00:43:12,500 --> 00:43:14,689 Everything done with the splitter, the 1187 00:43:14,690 --> 00:43:17,059 filter actually had three DMA 1188 00:43:17,060 --> 00:43:19,249 sources, so you could copy from three 1189 00:43:19,250 --> 00:43:21,859 different sources, combine 1190 00:43:21,860 --> 00:43:24,179 them in some specific way. 1191 00:43:24,180 --> 00:43:26,449 So it was able to to 1192 00:43:26,450 --> 00:43:28,789 define 256 different boolean 1193 00:43:28,790 --> 00:43:31,039 functions, to combine the bits from 1194 00:43:31,040 --> 00:43:33,109 those three sources, and then 1195 00:43:33,110 --> 00:43:35,449 it rotated to a specific memory 1196 00:43:35,450 --> 00:43:36,830 destination, which is the fourth 1197 00:43:37,850 --> 00:43:40,309 the fourth memory for the channel. 1198 00:43:40,310 --> 00:43:42,229 Additionally, had the possibility for 1199 00:43:42,230 --> 00:43:44,299 shifting and masking because, as 1200 00:43:44,300 --> 00:43:46,339 you know, memory, spite or intent and not 1201 00:43:46,340 --> 00:43:47,539 bit oriented. 1202 00:43:47,540 --> 00:43:49,159 But if you want to move just a single 1203 00:43:49,160 --> 00:43:51,439 bit, then you have to 1204 00:43:51,440 --> 00:43:52,549 do something. 1205 00:43:52,550 --> 00:43:54,139 And this was done in hardware as well. 1206 00:43:54,140 --> 00:43:56,659 So big shifting is this and masking 1207 00:43:56,660 --> 00:43:59,059 if at the end is something that you want 1208 00:43:59,060 --> 00:44:00,289 not to copy, 1209 00:44:01,530 --> 00:44:03,289 it had a descending and an ascending 1210 00:44:03,290 --> 00:44:05,719 operation mode, which is important 1211 00:44:05,720 --> 00:44:07,939 if you want to copy overlapping memory 1212 00:44:07,940 --> 00:44:10,039 areas. So you have to copy in the 1213 00:44:10,040 --> 00:44:11,719 right order. If you don't do that in the 1214 00:44:11,720 --> 00:44:13,819 right order, then you will get some crap 1215 00:44:13,820 --> 00:44:15,709 on the display. 1216 00:44:15,710 --> 00:44:17,839 It could fill areas and it 1217 00:44:17,840 --> 00:44:19,159 could draw lines. 1218 00:44:19,160 --> 00:44:20,539 Everything in hardware. 1219 00:44:20,540 --> 00:44:22,699 You didn't you 1220 00:44:22,700 --> 00:44:24,799 did not use the CPU for that. 1221 00:44:24,800 --> 00:44:26,380 It was everything done by the printer. 1222 00:44:28,780 --> 00:44:31,239 OK, here's an interesting diagram that's 1223 00:44:31,240 --> 00:44:33,309 that's a bus timing and it looks a 1224 00:44:33,310 --> 00:44:35,409 little bit weird, I know, but copied this 1225 00:44:35,410 --> 00:44:37,659 from a book. So this line here 1226 00:44:37,660 --> 00:44:40,059 is the bus timing and this so 1227 00:44:40,060 --> 00:44:42,379 here that's a continuation of 1228 00:44:42,380 --> 00:44:44,649 of here. OK, that's a complete bus 1229 00:44:44,650 --> 00:44:46,779 timing of a horizontal line of 1230 00:44:46,780 --> 00:44:48,369 the beam on the screen. 1231 00:44:48,370 --> 00:44:49,869 So not on the screen. 1232 00:44:49,870 --> 00:44:52,029 So all you have on the screen 1233 00:44:52,030 --> 00:44:54,199 here also an area where you don't see 1234 00:44:54,200 --> 00:44:56,439 it. That's a complete bus timing here. 1235 00:44:56,440 --> 00:44:59,169 What we see here is time slots. 1236 00:44:59,170 --> 00:45:01,269 So here to the gray and here 1237 00:45:01,270 --> 00:45:03,609 and here and here. Every slot is one 1238 00:45:03,610 --> 00:45:05,709 bus cycle where whatever 1239 00:45:05,710 --> 00:45:08,649 device could access the bus, OK? 1240 00:45:08,650 --> 00:45:11,379 And the timing was here 1241 00:45:11,380 --> 00:45:13,509 made in such a way that 1242 00:45:13,510 --> 00:45:15,759 the even cyclist that's here 1243 00:45:15,760 --> 00:45:17,859 and here. So in between the different 1244 00:45:17,860 --> 00:45:20,169 cycles. So this this is an even cycle 1245 00:45:20,170 --> 00:45:22,269 and this and this and this was used 1246 00:45:22,270 --> 00:45:24,579 by the CPU and this was done 1247 00:45:24,580 --> 00:45:26,889 in that way because the six eight K 1248 00:45:26,890 --> 00:45:29,499 needed to pass cycles for execution 1249 00:45:29,500 --> 00:45:31,719 of instruction and first 1250 00:45:31,720 --> 00:45:32,649 cycle. 1251 00:45:32,650 --> 00:45:35,589 It fetched the instruction. 1252 00:45:35,590 --> 00:45:37,749 And the second cycle, it did 1253 00:45:37,750 --> 00:45:39,789 nothing on the bus, it actually executed 1254 00:45:39,790 --> 00:45:41,349 the instruction. 1255 00:45:41,350 --> 00:45:43,929 And so because of that, they combined 1256 00:45:43,930 --> 00:45:46,419 through the leaf that with the hardware 1257 00:45:46,420 --> 00:45:48,489 that in the second cycle the hardware 1258 00:45:48,490 --> 00:45:49,959 was accessing the bus. 1259 00:45:49,960 --> 00:45:52,269 So the CPU more or less, actually 1260 00:45:52,270 --> 00:45:54,339 didn't see that somebody else is 1261 00:45:54,340 --> 00:45:56,679 doing something OK. 1262 00:45:56,680 --> 00:45:58,780 But as you can see here, the black 1263 00:45:59,860 --> 00:46:01,869 here and here and here and here, that's a 1264 00:46:01,870 --> 00:46:03,909 bit plain, DMAE. 1265 00:46:03,910 --> 00:46:06,009 So we have here to beat planes one, five, 1266 00:46:06,010 --> 00:46:07,899 three and so on. So they're more or less 1267 00:46:07,900 --> 00:46:10,119 no cycle's 1268 00:46:10,120 --> 00:46:11,349 free for the CPU. 1269 00:46:11,350 --> 00:46:12,939 So the CPU was locked out from the 1270 00:46:12,940 --> 00:46:13,839 memory. 1271 00:46:13,840 --> 00:46:16,239 So you have to wait actually 1272 00:46:16,240 --> 00:46:18,279 for the chip from the chip. 1273 00:46:18,280 --> 00:46:20,259 Ram was attached to the custom chips and 1274 00:46:20,260 --> 00:46:22,689 because of that it was called slow 1275 00:46:22,690 --> 00:46:24,049 ram. 1276 00:46:24,050 --> 00:46:26,239 OK, slow Ramiz, because the 1277 00:46:26,240 --> 00:46:28,489 chips were accessing the bus here 1278 00:46:28,490 --> 00:46:30,769 for the display and 1279 00:46:30,770 --> 00:46:32,689 it couldn't access it anymore, and that's 1280 00:46:32,690 --> 00:46:35,119 that's why it's called slow ramp compared 1281 00:46:35,120 --> 00:46:37,369 to the fast ram, which was in this eight 1282 00:46:37,370 --> 00:46:39,289 megabyte Otakon space. 1283 00:46:39,290 --> 00:46:40,519 The chips had a nexus there. 1284 00:46:40,520 --> 00:46:42,409 And that's why that's that's why it was 1285 00:46:42,410 --> 00:46:44,179 called slow and fast ram. 1286 00:46:46,040 --> 00:46:48,289 OK, audio hardware, 1287 00:46:48,290 --> 00:46:50,719 it had four independent eight bit audio 1288 00:46:50,720 --> 00:46:52,879 channels with about 1289 00:46:52,880 --> 00:46:55,399 roughly about twenty eight K sampling 1290 00:46:55,400 --> 00:46:57,589 rate WI, which gives an 1291 00:46:57,590 --> 00:46:59,989 audio frequency of about yeah, 1292 00:46:59,990 --> 00:47:02,179 let's say, 15 kilohertz audio 1293 00:47:02,180 --> 00:47:04,579 frequency and had 1294 00:47:04,580 --> 00:47:06,709 additional support for frequency 1295 00:47:06,710 --> 00:47:08,959 and amplitude modulation, which 1296 00:47:08,960 --> 00:47:10,819 you can additionally do with those 1297 00:47:10,820 --> 00:47:13,309 channels, with those channels function 1298 00:47:13,310 --> 00:47:15,199 based. So you feed one audio channel with 1299 00:47:15,200 --> 00:47:16,699 the sample and the second audio channel 1300 00:47:16,700 --> 00:47:18,799 with the function that modulates the 1301 00:47:18,800 --> 00:47:20,779 first, the first channel. 1302 00:47:20,780 --> 00:47:22,489 First channel of course it was 1303 00:47:22,490 --> 00:47:24,449 interrupted interrupt. And so if the 1304 00:47:24,450 --> 00:47:26,809 sample data was at its end, it generated 1305 00:47:26,810 --> 00:47:28,909 and interrupted the CPU can could 1306 00:47:28,910 --> 00:47:32,149 feed and you address into 1307 00:47:32,150 --> 00:47:34,399 into the audio registers. 1308 00:47:34,400 --> 00:47:36,199 So here, a brief interrupt summary. 1309 00:47:36,200 --> 00:47:37,729 Everything was interrupted, interrupt 1310 00:47:37,730 --> 00:47:38,629 controlled. 1311 00:47:38,630 --> 00:47:40,309 And that's nice because the hardware 1312 00:47:40,310 --> 00:47:42,589 tells you you is the CPU, 1313 00:47:42,590 --> 00:47:44,299 so the hardware tells the CPU. 1314 00:47:44,300 --> 00:47:46,579 If something is to do 1315 00:47:46,580 --> 00:47:48,889 so, the CPU doesn't have to wait for it. 1316 00:47:48,890 --> 00:47:50,749 So we have the vertical blank interrupt. 1317 00:47:50,750 --> 00:47:51,749 That's pretty interesting. 1318 00:47:51,750 --> 00:47:53,779 That's if the beam is finished with 1319 00:47:53,780 --> 00:47:56,179 display here in the right lower 1320 00:47:56,180 --> 00:47:58,429 corner, then it generates an interrupt. 1321 00:47:58,430 --> 00:48:00,499 And while the beam returns to the 1322 00:48:00,500 --> 00:48:02,689 left upper corner, there is time for 1323 00:48:02,690 --> 00:48:04,969 the CPU because during this time 1324 00:48:04,970 --> 00:48:07,309 the bit demo isn't doing doing anything. 1325 00:48:07,310 --> 00:48:09,439 That's about four twenty six five 1326 00:48:09,440 --> 00:48:11,569 thousand six hundred cycles within this 1327 00:48:11,570 --> 00:48:13,219 cycle. So you could do a lot of stuff. 1328 00:48:13,220 --> 00:48:15,559 So in the intro that I showed you before, 1329 00:48:15,560 --> 00:48:17,329 it runs smoothly because most of the 1330 00:48:17,330 --> 00:48:19,729 control stuff is done 1331 00:48:19,730 --> 00:48:21,859 during this vertical plank and everything 1332 00:48:21,860 --> 00:48:23,360 else is then done by the hardware. 1333 00:48:24,900 --> 00:48:26,699 We have to interrupt, we could wait for 1334 00:48:26,700 --> 00:48:28,949 specific themes, the audio 1335 00:48:28,950 --> 00:48:30,729 interrupt, as I just explained, we have a 1336 00:48:30,730 --> 00:48:33,389 bleeder finished. So if the platers was 1337 00:48:33,390 --> 00:48:35,579 ready copying something, 1338 00:48:35,580 --> 00:48:36,809 there's a disk interop. 1339 00:48:36,810 --> 00:48:39,089 The disk was the disk was also 1340 00:48:39,090 --> 00:48:40,169 Ditmar driven. 1341 00:48:40,170 --> 00:48:42,299 So the data transfer was not done by the 1342 00:48:42,300 --> 00:48:44,159 CPU. It was done by the same channel as 1343 00:48:44,160 --> 00:48:45,209 well. 1344 00:48:45,210 --> 00:48:47,369 The CIA is, of course, generated and 1345 00:48:47,370 --> 00:48:49,889 interrupt, as usual, four year old data 1346 00:48:49,890 --> 00:48:51,159 ready or whatever. 1347 00:48:51,160 --> 00:48:53,969 And we had here some external 1348 00:48:53,970 --> 00:48:55,679 interrupts for the expansion ports. 1349 00:48:57,180 --> 00:48:59,309 OK, finally, some data about 1350 00:48:59,310 --> 00:49:02,189 the floppy disk, which was the default 1351 00:49:02,190 --> 00:49:04,999 well, storage medium for 1352 00:49:05,000 --> 00:49:07,349 the computer, was a flexible 1353 00:49:07,350 --> 00:49:09,689 disk controller, so it was not completely 1354 00:49:09,690 --> 00:49:11,699 fixed hardware or whatever. 1355 00:49:11,700 --> 00:49:14,429 You could program it in several ways. 1356 00:49:14,430 --> 00:49:16,649 It was possible to attach up to four disk 1357 00:49:16,650 --> 00:49:19,409 drives and 1358 00:49:19,410 --> 00:49:22,019 you could actually access simultaneously 1359 00:49:22,020 --> 00:49:23,459 accessed several drives. 1360 00:49:23,460 --> 00:49:25,469 And it was nice to copy software because 1361 00:49:25,470 --> 00:49:27,929 you had three disks, so three drives 1362 00:49:27,930 --> 00:49:29,669 to write and one to read. 1363 00:49:29,670 --> 00:49:30,670 At one time 1364 00:49:32,430 --> 00:49:34,769 the standard format was eight tracks, 1365 00:49:34,770 --> 00:49:36,989 two sides, 11 sectors, which gives 1366 00:49:36,990 --> 00:49:39,179 about one eight hundred and 1367 00:49:39,180 --> 00:49:40,679 eighty kilobytes. 1368 00:49:40,680 --> 00:49:42,959 And because of the 1369 00:49:42,960 --> 00:49:45,089 controller being so flexible, it could 1370 00:49:45,090 --> 00:49:47,309 read even other formats, such as 1371 00:49:47,310 --> 00:49:49,499 the IBM PC format, 1372 00:49:49,500 --> 00:49:51,899 which was then at the time then used, 1373 00:49:51,900 --> 00:49:54,449 which with just nine 1374 00:49:54,450 --> 00:49:56,549 nine sectors here, for example, the 1375 00:49:56,550 --> 00:49:58,889 file system was originally 1376 00:49:58,890 --> 00:50:01,019 called so original, it was called just 1377 00:50:01,020 --> 00:50:01,739 filesystem. 1378 00:50:01,740 --> 00:50:03,779 But later it was then called old file 1379 00:50:03,780 --> 00:50:05,129 system. 1380 00:50:05,130 --> 00:50:07,229 It had four hundred and 1381 00:50:07,230 --> 00:50:09,419 eighty eight bytes per sector, so 1382 00:50:09,420 --> 00:50:11,789 actually had of course 512. 1383 00:50:12,850 --> 00:50:14,539 Uh. 1384 00:50:14,540 --> 00:50:16,999 But 24 at the beginning were used 1385 00:50:17,000 --> 00:50:19,369 for arrow checking or stuff 1386 00:50:19,370 --> 00:50:21,799 like that, so it was well designed for a 1387 00:50:21,800 --> 00:50:24,349 floppy disk drives, which, yes, 1388 00:50:24,350 --> 00:50:26,509 every as as I remember, 1389 00:50:26,510 --> 00:50:28,969 every third disc was corrupt, 1390 00:50:28,970 --> 00:50:30,049 OK? 1391 00:50:30,050 --> 00:50:32,359 And then later they developed 1392 00:50:32,360 --> 00:50:34,099 the fourth file system, which was mainly 1393 00:50:34,100 --> 00:50:36,229 made for the hard drives, and then 1394 00:50:36,230 --> 00:50:38,689 they filled up the 24 bytes with 1395 00:50:38,690 --> 00:50:39,769 data. 1396 00:50:39,770 --> 00:50:42,079 So. So you got some additional 1397 00:50:42,080 --> 00:50:43,909 data to store on the disk drive. 1398 00:50:45,230 --> 00:50:47,359 Yes, so a brief 1399 00:50:47,360 --> 00:50:50,389 introduction into the Amiga. 1400 00:50:50,390 --> 00:50:51,390 Hardware. 1401 00:50:52,490 --> 00:50:53,649 Are there any questions? 1402 00:50:58,470 --> 00:51:01,439 Sorry for the question 1403 00:51:01,440 --> 00:51:02,440 was a quick. 1404 00:51:06,730 --> 00:51:08,709 Great. I know my mike. 1405 00:51:08,710 --> 00:51:11,409 So, yeah, OK, OK, 1406 00:51:11,410 --> 00:51:13,199 I have a question regarding the sprites. 1407 00:51:13,200 --> 00:51:15,699 You said it had a 1408 00:51:15,700 --> 00:51:16,839 collision detection. Yeah. 1409 00:51:16,840 --> 00:51:18,969 What's that like on the 64 where you 1410 00:51:18,970 --> 00:51:21,189 only knew which Sprite was 1411 00:51:21,190 --> 00:51:22,389 involved in any collisions? 1412 00:51:22,390 --> 00:51:24,399 Or did it also tell you who collided with 1413 00:51:24,400 --> 00:51:25,400 whom? 1414 00:51:26,800 --> 00:51:28,749 Something in between. 1415 00:51:28,750 --> 00:51:29,859 Something in between. 1416 00:51:29,860 --> 00:51:31,959 So is it combined always 1417 00:51:31,960 --> 00:51:34,179 to Sprite? So you could you then 1418 00:51:34,180 --> 00:51:37,149 had to programmatically 1419 00:51:37,150 --> 00:51:39,309 find out which Sprite it was, but you had 1420 00:51:39,310 --> 00:51:41,769 four Sprite and so you could 1421 00:51:41,770 --> 00:51:42,770 find out. 1422 00:51:45,840 --> 00:51:48,089 In pairs of two, which Sprite 1423 00:51:48,090 --> 00:51:49,509 collides to the address. 1424 00:51:49,510 --> 00:51:51,119 OK, OK. 1425 00:51:54,230 --> 00:51:55,759 Any questions? 1426 00:51:55,760 --> 00:51:57,139 Do we have any more questions? 1427 00:51:57,140 --> 00:51:59,299 If so, please stand up and go to 1428 00:51:59,300 --> 00:52:00,800 the mikes about Isold. 1429 00:52:02,520 --> 00:52:04,260 Do we have a question from the Internet? 1430 00:52:05,350 --> 00:52:07,899 Now, I have a second question then 1431 00:52:07,900 --> 00:52:10,179 and then the copper wait, 1432 00:52:10,180 --> 00:52:10,809 come on. 1433 00:52:10,810 --> 00:52:12,639 Yeah, you didn't specify if that could 1434 00:52:12,640 --> 00:52:14,809 wait for lines are also for, first 1435 00:52:14,810 --> 00:52:16,389 of all, positions. 1436 00:52:16,390 --> 00:52:18,549 So you could could actually wait for 1437 00:52:18,550 --> 00:52:20,169 it here. It's not four lines. 1438 00:52:20,170 --> 00:52:22,599 You could actually for specific a 1439 00:52:22,600 --> 00:52:24,010 pick for positions you could wait. 1440 00:52:27,940 --> 00:52:30,009 OK, I think we don't have any more 1441 00:52:30,010 --> 00:52:32,439 questions, and we are also 1442 00:52:32,440 --> 00:52:34,989 more or less at the end of our time, 1443 00:52:34,990 --> 00:52:37,089 so thank you very 1444 00:52:37,090 --> 00:52:38,109 much. Thank you. 1445 00:52:38,110 --> 00:52:39,190 What's really amazing. 1446 00:52:52,670 --> 00:52:54,380 Perhaps one of he, as a person, will 1447 00:52:55,430 --> 00:52:57,829 take out his or her old Amiga 1448 00:52:57,830 --> 00:52:59,959 again and, yeah, play around with it 1449 00:52:59,960 --> 00:53:02,059 again after this nice 1450 00:53:02,060 --> 00:53:03,239 trip down memory lane.